Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка вторая.doc
Скачиваний:
57
Добавлен:
05.06.2015
Размер:
1.61 Mб
Скачать

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

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

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. Составьте программу, вычеркивающую каждую третью букву слова Х в заданном предложении.