Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Программирование с использованием строковых данныхСодержание книги
Поиск на нашем сайте (Задания 91-120) Задача 1 Дана последовательность из 45 символов. Подсчитать в этой последовательности количество вопросительных и восклицательных знаков. Решение:
Type St=String[45]; {Определяем тип St – строка из 45 символов} Var A:St; {переменная типа St} I,K:Byte; Begin Writeln('Введите строку символов:'); Readln(a); {чтение строки символов} К:=0; {начальное значение суммы искомых символов} For i:= 1 То Lenth(a) Do If (a[i]='!') Or (a[i]= '?') Then К:= K+1; {Если i-ый символ строки равен ‘?’ или ’!’, то увеличиваем сумму на 1}
End.
Пример2 Написать программу, которая заменяет все вхождения в строку символа '*' заданной подстрокой. Решение
var sText: string [80]; {строка, в которой осуществляется поиск} sArg: string [8]; {подстрока, на которую заменяются все символы ‘*’} p: Integer; {переменная, указывающая позицию в строке искомого символа} Begin WriteLn('Введите sText и sArg:'); ReadLn(sText); {Чтение строки} ReadLn(sArg); {Чтение подстроки} p:= Pos('*', sText); {определяем позицию символа ‘*’} while p <> 0 do Begin Delete(sText, p, 1); {Удаляем символ ‘*’} Insert(sArg, sText, p); {Вставляем подстроку} p:= Pos('*', sText); {Ищем следующий символ ‘*’} end; WriteLn('Выход:'); WriteLn(sText); {Вывод результата на экран} end. Программирование с использованием данных типа запись (Задания 121-135) Задача 1 Используя записи, написать программу, которая определит количество студентов, сдавших экзамен на 4 и 5 и выведет их фамилии. Пусть имеется ведомость студентов одной группы с результатами сдачи экзамена по программированию: №студ. Ф.ИО. Оценка 1 Петров В.В. 5 2 ИвановСИ. 4 3 Чемоданов М.Т. 3
program zad 8; { Блок описания данных } type v=record {определяем тип запись} nom: Integer; {Номер студента} fio: string[25]; {ФИО} ball: integer {Оценка} end; var spisok: array[1..25] of v; {Одномерный массив содержащий элементы записи} i,n,kol: integer; { Начало программы } Begin { Ввод данных и подсчет студентов } kol:=p; writeln('введите кол-во студ. в группе:'); readhi(n); {Чтение кол-ва студентов} for i:=l to n do Begin writeln('вводите данные след, студента'); Begin write('номер в списке:'); readln(nom); {номер студента} write('Ф.И.О: '); readln(fio); {ФИО студента} write('оценка:'); readln(ball); {Оценка студента} if ball >= 4 then kol:=kol+1; {Считаем кол-во студентов, чей балл выше 3} end; end; { Вывод данных }
writeln('Ф.И.О. этих студентов:'); for i:=1 to n do begin {Выводим их ФИО} with spisok[i] do if ball>=4 then writeln(fio); {если балл выше 3, то выводим ФИО} end; end, Файлы (Задания 136-150) Задача1 Сформировать файл, состоящий из целых чисел 5,6,7,8,9.
Program Number_1; Var Fb: File Of Byte; {файловая переменная (файл состоит из целых чисел типа byte)} I: Byte; Begin Assign(Fb, 'FileByte.Dat'); {Связываем файловую переменную с файлом на диске} Rewrite(Fb); {Открываем файл для записи (создаем файл)} For I:= 5 To 9 Do Write(Fb,I); {Записываем в файл числа от 5 до 9} Close(Fb); {Закрываем файл} End.
Задача 2. К файлу, созданному в предыдущем примере, добавить числа 20, 30,40. Решение:
Var Fb:File Of Byte; {файловая переменная (файл состоит из целых чисел типа byte)} I,A:Byte; Begin Assign(Fb,’TileByte.Dat'); {Связываем файловую переменную с файлом на диске} Rewrite(Fb); {Открываем файл для записи (создаем файл)} Seek(Fb,FileSize(Fb)); {переходим к последнему элементу файла} For I:= 2 To 4 Do Begin A:=I*10; Write(Fb,A) {Записываем в файл числа 20, 30, 40} End; Close(Fb); {Закрываем файл} End Задача 3 Видоизменить содержимое файла, созданного в первом примере, заменив последние три элемента на числа 30,40, 50. Затем вывести на печать содержимое файла. Решение
Var Fb: File Of Byte; {файловая переменная (файл состоит из целых чисел типа byte)} I,A:Byte; Begin Assign(Fb,’FileByte.Daf’); {Связываем файловую переменную с файлом на диске} Rewrite(Fb); {Открываем файл для записи} {Корректировка элементов} For I:=3 To 5 Do Begin Seek(Fb,I-1); {} Read(Fb,A); A:=I*10; Seek(Fb,I-l); Write(Fb,A) End; {Печать элементов) Reset(Fb); {Открываем файл для чтения} While Not Eof(Fb) Do {Пока не конец файла} Begin Read(Fb,A); {Читаем компоненту файла} Write(A,"); {Выводим на экран} End; Close(Fb); {Закрываем файл} End. Задача 4 Необходимо написать программу, которая формирует и выводит на экран дисплея текстовый файл Т,состоящий из девяти строк, в первой из которых содержится один символ "1", во второй - два символа "2",.,в девятой - девять символов "9". Файл будет создан и хранится на диске а: под именем tt. txt. Решение:
Var T:Text; {текстовая переменная} C,D: Char; Begin Assign(T,'a:tt.txt'); {связываем текстовую переменную с файлом на диске} Rewrite(T); {Открываем файл для записи (создаем файл)} For D:='1' To '9' Do Begin For С:= '1' To D Do Write(T,D); {Записываем в файл} Writeln(T); {Перемещаемся на строку вниз} End; Close(T); {Закрываем файл} Reset(T); {Открываем файл для чтения} While Not Eof(T) Do {Пока не конец файла} Begin Read(T,C); {Читаем компоненту файла} Write(C); {Выводим на экран} End; Close(T); {Закрываем файл} End.
|
||
|
Последнее изменение этой страницы: 2020-12-09; просмотров: 124; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.176 (0.009 с.) |