Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Турбо Паскаль (паскалер).doc
Скачиваний:
19
Добавлен:
03.05.2019
Размер:
2.65 Mб
Скачать

Занятие 5. Контрольная работа

Вариант 1

1. Результатом вычисления функции Copy('программирование',4,5) будет слово

  1. миров

  2. грамм

  3. программ

  4. программа

  5. грамми

2. Результатом работы программы:

Var x : string[6];

Begin

x := ‘мим’+’озадаченный’; writeln(x);

End.

будет слово:

  1. мим озадаченный

  2. мимозадаченный

  3. мимоза

  4. озадаченный мим

  5. озадаченныймим

3. Составьте подпрограмму для решения задачи:

Выясните, какая из букв (первая или последняя) встречается в заданном слове чаще.

Вариант 1I

1. Результатом работы программы:

Program DemoUpcase;

Var

Word : string;

i : Byte;

Begin

Word := 'фирма Microsoft';

for i := 1 to Length (Word) do

Word[i] := UpCase (Word[i]);

writeln(Word); {выводится текст 'фирма MICROSOFT'}

End.

будет предложение:

  1. 'Фирма MICROSOFT'

  2. 'ФИРМА MICROSOFT'

  3. 'фирма Microsoft

  4. 'фирма MICROSOFT'

  5. 'фирма microsoft

2. Вызывая функцию Copy не нужно указывать:

  1. •имя строки, из которой должен извлекаться копируемый фрагмент,

  2. •позицию в строке, начиная с которой будет копироваться фрагмент,

  3. •число копируемых символов;

  4. имя строки, в которую копируется данный фрагмент

  5. имя функции.

3. Составьте подпрограмму для решения задачи:

Сколько букв "у" в слове стоит на четных местах?

Вариант III

1. Результатом работы программы:

Program DemoFunctionLength;

Var

Word : string[9];

Begin

Word := 'Я люблю программировать';

writeln(Length (Word));

End.

будет:

  1. 9

  2. 23

  3. люблю программировать'

  4. люблю '

  5. 256

2. Результатом работы программы:

Program DemoFunctionPos;

Var

Word : string;

SearchWord : string[20];

Position : Byte;

Begin

Word := 'Карл у Клары украл кораллы. Клара у Карла украла кларнет.';

SearchWord := 'Карл';

Position := Pos(SearchWord, Word);

writeln (Position );

End.

будет:

  1. 1 и 37

  2. 37

  3. 28

  4. 1

  5. 0

3. Составьте подпрограмму для решения задачи:

Вычеркните i-ые буквы текста и посчитайте в нем количество введенных повествовательных предложений.

Вариант 1V

1. Встроенная функция Length позволяет определить: (а не, установленную при декларации):

  1. фактическую длину текстовой строки, хранящейся в указанной переменной,

  2. величину предельного размера строки,

  3. предполагаемую величину строки,

  4. начальную длину строки,

  5. длину строки, заранее заданную пользователем.

2. Результатом работы программы:

Program DemoFunctionConcat;

Var

Word : string;

Word1, Word2 : string[20];

Begin

Word1 := ' Microsoft ';

Word2 := ' фирмы';

Word := Concat('Компьютеры ',Word1,Word2);

writeln(Word);

End.

будет текст:

  1. ' фирмы Компьютеры Microsoft',

  2. ' Microsoft Компьютеры фирмы ',

  3. 'Компьютеры фирмы Microsoft',

  4. 'Компьютеры Microsoft фирмы ',

  5. 'Компьютеры Microsoft фирмы '.

3. Составьте подпрограмму для решения задачи:

Вычеркните из слова Х те буквы, которые встречаются в слове Z.

Вариант V

1. При подсчете фактической длины строки

  1. учитываются все входящие в нее символы,

  2. учитываются все входящие в нее символы, кроме пробелов,

  3. учитываются не все входящие в нее символы,

  4. учитываются все входящие в нее символы, исключая служебные символы,

  5. учитываются все входящие в нее символы, имеющиеся на клавиатуре.

2. Результатом работы программы:

Program DemoProcedureStr;

Var

Word : string;

Chislo : integer;

Begin

Chislo := 1560;

Str(Chislo:8, Word);

writeln(Word);

End.

будет текст:

  1. '1500',

  2. ' 1560',

  3. ' 1560',

  4. 100000000',

  5. '00001560'.

3. Составьте подпрограмму для решения задачи:

Напишите программу, которая вводит строку и выводит ее, сокращая каждый раз на 1 символ до тех пор, пока в строке не останется 1 символ.

Вариант V1

1. C помощью функции Pos Вы можете осуществить поиск некоторого фрагмента в строке. Если заданный фрагмент в строке присутствует, то:

  1. функция возвращает количество фрагментов в строке,

  2. функция возвращает нуль,

  3. функция вырезает найденный фрагмент из строки,

  4. функция заменяет найденный фрагмент на введенный ранее,

  5. функция возвращает номер позиции, с которой начинается фрагмент.

2. Результатом работы программы:

Program DemoProcedureVal;

Var

Word : string;

Chislo, Code : integer;

Begin

writeln('Введите строку цифр ');

readln(Word);

Val(Word, Chislo, Code); {преобразование строки в число}

if Code <> 0

then

writeln(‘??????????????’);

End.

должно быть следующее сообщение:

  1. 'Ошибка! В позиции ',Code,' не ноль!',

  2. 'Ошибка! Цифра Code,' не закодирована!',

  3. 'Прекрасно! Число в переменной ',Code,' !',

  4. 'Ошибка! В позиции ',Code,' не цифра!',

  5. 'Прекрасно! Число в переменной ', Chislo,' !'.

3. Составьте подпрограмму для решения задачи:

Составьте программу вычисления суммы мест, на которых в слове Х стоят буквы "в" и "п".

Сформулируйте тексты решенных ниже задач

Примечание. При анализе алгоритмов Вам потребуются знания о некоторых операторах. В будущем применяйте их при решении задач.

GoTo – оператор, устанавливающий курсор в заданное параметрами знакоместо в текстовом режиме. Первый параметр – номер столбца, второй – номер строки. Общее количество строк 25, а столбцов – 80.

Delay – оператор задержки вывода на экран информации. Параметр равный 1000 соответствует 1 секунде.

Sound – оператор, включающий динамик компьютера с заданной частотой в виде параметра.

NoSound – оператор, выключающий динамик.

DelLine – оператор, выводящий строку из пробелов в строку, в которой находится курсор.

Window – оператор, организующий окно в текстовом режиме с координатами верхнего левого и правого нижнего углов, переданными как параметры.

Задача 1.

Program MiskovVadim;

Var

i, k,x : integer;

a, b, c : string;

Begin

write('введите строку>');

readln(a);

k := length(a);

repeat

for i := 1 to 2 do

c:=c+b;

x:=x+1;

b:=Copy(a,x,1);

until x=k+1;

writeln ('Ваше слово - ',s);

End.

Задача 2.

Program AlexeyDashkin;

Type

Stroka = string [100];

Var

Vhod, St1, InStr : Stroka;

Begin

St1 := ' Поставьте мне пятерку в зачетку!!!!';

ClrScr;

InStr := ' ';

St1:= St1+InStr;

for i := 1 to length(St1) do

begin

Delete(St1,1,1);

GoTo(1,10);

write(St1);

Delay(500);

Sound(1000);

Delay(900);

NoSound;

DelLine;

end;

End.

Задача 3.

Program AkulovE;

Var

y,i : integer;

Name, Bukva : string;

Begin

write ('Введите что-нибудь ');

read (Name);

for i := Length(Name) downto 1 do

begin

Bukva := Name[i];

Delete(name,i,1);

for y := 1 to 25 do

begin

Window(19,1,80,25);

GotoXY(i,y);

write(Bukva);

Delay(500);

ClrScr;

write(Name);

end;

end;

End.

Выберите с учителем задачи для самостоятельного решения:

1. Дана строка текста. В данной строке поменять местами каждые два слова из четырех первых. Если количество слов меньше заданного, то вывести об этом сообщение.

2. В заданном тексте найти и распечатать слово максимальной длины.

3. Написать (в порядке появления в тексте) все слова, длина которых попадает в интервал [X, Y]. Здесь X и Y целые числа, задающиеся пользователем.

4. В данном предложении найти количество слов, содержащих удвоенную согласную (буквы латинские). Слова в предложении разделяются пробелами, в конце предложения - точка.

5. Предложите пользователю ввести дату в предложенном формате ДД-ММ-ГГ. День и месяц могут быть указаны одиночными числами, т.е. 1-5-94, а не 01-05-94. Выделите числа представляющие день, месяц и год, и выведите каждое число с соответствующей поясняющей надписью на экран.

6. Предложите пользователю ввести число в интервале от 1 до 5 включительно. Ваша программа должна позволять пользователю вводить любую последовательность символов. Организуйте проверку ввода, и если ввод не длиннее одного символа, либо нецифровой, либо не попадает в допустимый интервал, тогда выведите сообщение об ошибке. Если ввод неправилен, тогда предложите пользователю повторить попытку.

7. Даны два текста А и Б. Проверьте, можно ли из букв, входящих в А, составить Б. (Буквы можно переставлять, но каждую букву можно использовать не более одного раза).

8. В строке, любое количество подряд следующих пробелов замените единственным пробелом.

9. Вычислите длину самого короткого слова в предложении из трех слов, разделенных пробелами.

10. Написать (в порядке появления в тексте) все слова, длина которых попадает в интервал [X, Y]. Здесь X и Y целые числа, указывающие, соответственно, наибольшую и наименьшую длину

11. Составьте программу, вычеркивающую каждую третью букву слова Х в заданном предложении.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]