![]() Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
![]() Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
![]() |
Лабораторная работа N 6Стр 1 из 23Следующая ⇒
КАФЕДРА ИТ-7 ДИСЦИПЛИНА «Программирование на языке высокого уровня» (часть 2) МЕТОДИЧЕСКИЕ УКАЗАНИЯ к проведению лабораторных работ и курсовой работы Специальность 23.01.02 «Автоматизированные системы обработки информации и управления»
Москва 2013
УТВЕРЖДАЮ Проректор по научной работе __________________________ «___»_____________2013г.
АННОТАЦИЯ Настоящие методические указания предназначены для оказания методической помощи студентам 1-го курса при выполнении лабораторных работ и курсовой работы по курсу «Программирование на языке высокого уровня» (часть 2)
Авторы: Скворцова Т.И.,, Морозова Т.Ю. Научный редактор: проф. Морозова Т.Ю. Рецензент: проф. Филаретов Г.Ф. (МЭИ) Рассмотрено и одобрено на заседании кафедры ИТ-7 «___»_________2013 г. Зам. Зав.каф. ИТ-7. Ответственный от кафедры за выпуск учебно-методических материалов________________________________ Лабораторная работа N 5 Строки. Цель работы: изучение стандартных подпрограмм преобразования строк. Пример первого задания. Удалить среднюю букву при нечетной длине строки и две средние буквы при четной длине строки. Procedure MiDel (Var st: String); Var k: Byte; Begin k:=Length(st); {длина строки} If odd(k)then Delete (st, k Div 2+1,1){удаление средней буквы} else Delete (st,k Div 2,2);{удаление 2-х средних букв} End; Пример второго задания. Заменить все вхождения подстроки w в строке st на подстроку V. Procedure Ins (w, v:String;Var st: String); Var k: Byte; Begin While Pos (w, st)<>0 Do { поиск подстроки w в строке st} Begin k:= Pos(w,st);{№ позиции в строке st с которого начинается подстрока} Delete(st,k,Length(w));{удаление подстроки w} Insert (v,st,k);{вставка подстроки v} End; End; Пример третьего задания. Подсчитать сумму цифр, встречающихся в строке. Function Sum(st: String): Integer; Var i, k, d, s: Integer; Begin s:=0; { счетчик суммы цифр} For i:=l To Length (st) Do Begin Val (st[I],d,k);{преобразование символа в число} If k=0 Then s:=s+d;{ при успешном преобразовании наращиваем счетчик суммы} End; Sum: =s; End; Файлы. Цель работы: 1. Создание текстовых и типизированных файлов. 2. Поиск данных в файлах последовательного и прямого доступа. 3. Вывод файлов на печать. Пример задания. Создать и распечатать файл, содержащий сведения о родственниках: фамилия, имя, степень родства, город проживания, год рождения, профессиональная деятельность. Описываются процедуры создания и печати текстового и типизированного файлов, содержащих сведения о родственниках, а также вызовы этих процедур. type zap=record {Сведения о родственниках} fam:string[10]; nam:string[10]; rod:string[10]; town:string[10]; byear:1900..2050; work:string[10]; end; t1=text; t2=file of zap; var ft1:t1; {Текстовый файл} ft2:t2; {Типизированный файл}
Procedure sozdtext(var f1:t1); {Процедура создания текстового файла} var lzap:zap; i:byte; begin rewrite(f1); for i:=1 to 3 do with lzap do begin writeln('fam='); readln(fam); writeln(f1,fam); writeln('nam='); readln(nam); writeln(f1,nam); writeln('rod='); readln(rod); writeln(f1,rod); writeln('town='); readln(town); writeln(f1,town); writeln('byear='); readln(byear); writeln(f1,byear); writeln('work='); readln(work); writeln(f1,work); end; writeln(f1,#26); close(f1); end; Procedure sozdtypf(var f2:t2); {Процедура создания типизированного файла} var lzap:zap; i:byte; begin rewrite(f2); for i:=1 to 3 do begin with lzap do begin writeln('fam='); readln(fam); writeln('nam='); readln(nam); writeln('rod='); readln(rod); writeln('town='); readln(town); writeln('byear='); readln(byear); writeln('work='); readln(work); end; write(f2,lzap); end; close(f2); end; Procedure printtext(var f1:t1); {Процедура печати текстового файла}
var lzap:zap; i:byte; begin reset(f1); while not eof(f1) do with lzap do begin readln(f1,fam); readln(f1,nam); readln(f1,rod); readln(f1,town); readln(f1,byear); readln(f1,work); writeln(fam,’ ’,nam,’ ’,rod,’ ’,town,’ ’, byear, ’ ’,work); writeln('------------------------------------'); end; close(f1); end; Procedure printtypf(var f2:t2); {Процедура печати типизированного файла} var lzap:zap; i:byte; begin reset(f2); while not eof(f2) do begin read(f2,lzap); with lzap do writeln(fam,’ ’,nam,’ ’,rod,’ ’,town,’ ’, byear, ’ ’,work); writeln('----------------------------------------'); end; close(f2); end; BEGIN {тело основной программы} assign(ft1,'myf1.txt'); {$i-} {Выключаем контроль ввода-вывода} reset(ft1); {Открытие текстового файла} {$I+} {Включаем контроль ввода-вывода} if ioresult<>0 then begin writeln(#7,'Файла не существует, создайте text file!'); sozdtext(ft1); {Создание текстового файла} end; printtext(ft1); {Вывод текстового файла} assign(ft2,'myf2.dbf'); {$i-} reset(ft2); {Открытие типизированного файла} {$I+} if ioresult<>0 then begin writeln(#7, 'Файла не существует, создайте type file!'); sozdtypf(ft2) {Создание типизированного файла} end; printtext(ft2); {Вывод типизированного файла} END. Лабораторная работа N 6. Date: 2015-05-22; view: 601; Нарушение авторских прав |