Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лаба по Паскалю

.doc
Скачиваний:
6
Добавлен:
01.05.2014
Размер:
96.26 Кб
Скачать

5

Цель: Усвоить массивы и работу со строковыми данными.

Задание: Дана последовательность из n вещественных чисел. Найти номер первого вхождения данного числа в последовательность или вывести сообщение, что такого числа нет.

Блок – схема

Текст программы:

program z2;

var

m: array[1..100] of real;

a,k: integer;

n: real;

begin

writeln('vvedite kol-vo elementov');

readln(a);

writeln('введите последовательность ');

for k:=1 to a do

begin

write ('введите ',k,' элемент: ');

readln(m[k]);

end;

writeln('введите искомый элемент');

readln(n);

k := 0;

repeat

inc(k);

until (k>a) or (m[k]=n);

if k<=a then writeln('Искомый элемент№ ',k)

else writeln('Искомый элемент не найден');

readln;

end.

Результаты проверки:

Задание: Ввести строку «Студент ФИО»

  1. Подсчитать количество букв в строке.

  2. Определить длину строки.

  3. Получить новую строку вставив слова «группы 555».

  4. Вывести на экран все номера позиций в которых встречается 1 буква имени.

  5. Заменить 1 букву фамилии на другую.

  6. Получить перевернутые буквы имени.

  7. Разбить предложения на отдельные слова.

Блок – схема

Текст программы:

program stroki;

var

s:string;

i,c,k,k1,k2:integer;

q,f:char;

n: array[0..100] of string;

begin

k:=0;

writeln('введите "студент" ФИО');

readln(s);

for i:=1 to length(s) do

if s[i]<>' ' then inc(c);

writeln('Количество букв в строке = ',c);

writeln('Длина строки = ',length(s));

for i:=1 to length(s) do

begin

if s[i]=' ' then inc(k);

if s[i]=' ' then q:=s[i+1];

end;

insert(' группы 555',s,8);

for i:=1 to length(s) do

if s[i]=q then inc(k1);

write ('Первая буква имени встречается в строке',k1,' раз(а)');

writeln('');

for i:=1 to length(s) do

begin

if s[i]=' ' then inc(k2);

if (s[i]=' ') and (k2=3) then s[i+1]:='Л';

end;

write(s);

writeln('');

k:=0;

for i:=1 to length(s) do

if s[i]=' ' then k:=k+1 else n[k]:=n[k]+s[i];

for i:=0 to length(n[4])-1 do

n[6]:=n[6]+n[4][length(n[4])-i];

writeln('Слова входящие в строку :');

for i:=0 to k do

writeln(n[i]);

writeln('перевернутое имя - ', n[k+1]);

readln;

end.

Результаты проверки: