Содержание
ВНИМАНИЕ | Для получения программы своего варианта пишите на наш электронный адрес proglabs@mail.ru |
Постановка задания
Задание для всех вариантов звучит так (или, возможно, немного изменено, так как могут быть разные издания учебного пособия):
Составить программу заданной обработки массива слов. В процессе обработки использовать множественный тип данных. Заполнение исходных данных — с клавиатуры. Исходный и обработанный массив выводить на экран.
Варианты заданий
№ | Постановка задачи |
1 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Символами могут быть только заглавные латинские буквы. Найти и вывести все гласные буквы (без повторений), которые встретились в двух самых длинных словах. |
2 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Символами могут быть только заглавные латинские буквы. Найти и вывести все глухие согласные буквы (без повторений), которые встретились в двух самых коротких словах. |
3 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Элементами слов могут быть любые графические символы. Удалить из массива все слова, содержащие не меньше трех четных цифр. |
4 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Символами могут быть только заглавные латинские буквы. Найти и вывести все слова, у которых число гласных букв превышает число согласных. |
5 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). В качестве символов могут использоваться только арабские цифры. Вывести слово, содержащее наибольшее число нечетных цифр. |
6 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). В качестве символов могут использоваться только арабские цифры. Удалить из массива слово, содержащее наибольшее количество четных цифр. |
7 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). В качестве символов могут использоваться только арабские цифры. Удалить из массива слово, содержащее наименьшее количество четных цифр. |
8 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). В качестве символов могут использоваться только арабские цифры. Вывести те слова, у которых число четных цифр превышает число нечетных. |
9 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Символами могут быть только заглавные латинские буквы. Найти слова, содержащие соответственно наибольшее и наименьшее количество гласных букв, и поменять их местами. |
10 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Символами могут быть только заглавные латинские буквы. В самом коротком слове все согласные буквы заменить на букву $«A»$. |
11 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Элементами слов могут быть любые графические символы. В слове наименьшей длины удалить все гласные буквы и подсчитать их количество в этом слове. |
12 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Элементами слов могут быть любые графические символы. Все цифры, содержащиеся в самом длинном слове этого массива, заменить на символ $«*»$. |
13 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Элементами слов могут быть любые графические символы. Вывести все четные цифры, содержащиеся в слове наибольшей длины, и вывести число повторений каждой этой цифры в этом слове. |
14 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Элементами слов могут быть любые графические символы. Найти и вывести слово, содержащее наибольшее количество цифр. |
15 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). В слове, котором обнаружено наибольшее количество шипящих букв, заменить их символ на «&». |
16 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Вывести все гласные буквы, содержащиеся в слове наибольшей длины, и вывести число повторений каждой буквы в этом слове. |
17 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Вывести все согласные буквы, содержащиеся в слове наибольшей длины, и вывести число повторений каждой буквы в этом слове. |
18 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Элементами слов могут быть любые графические символы. Подсчитать количество символов во всех словах массива, отличных от заглавных латинских букв. |
19 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Слова могут содержать любые символы языка. Найти в массиве и вывести слово, содержащее наибольшее количество слов, отличных от заглавных латинских букв |
20 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Слова могут содержать любые символы языка. Найти и вывести в самом длинном слове массива все символы, отличные от заглавных латинских букв. |
21 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Слова могут содержать любые символы языка. Найти слова, содержащие соответственно наибольшее и наименьшее количество цифр, и поменять их местами. |
22 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Слова могут содержать любые символы языка. Найти слова, содержащие соответственно наибольшее и наименьшее количество нечетных цифр, и поменять их местами. |
23 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Слова могут содержать любые символы языка. Найти слова, содержащие соответственно наибольшее и наименьшее количество нечетных цифр, и поменять их местами. |
24 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Слова могут содержать латинские буквы и цифры. Найти слова, содержащие соответственно наибольшее и наименьшее количество заглавных латинских букв, и поменять их местами. |
25 | Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Элементами слов могут быть любые символы. В слове наименьшей длины удалить все четные цифры и подсчитать их количество в этом слове. |
Лабораторная работа №7 предполагает написание программы на языке Pascal. При заказе работы своего варианта вы получите качественно написанную и хорошо прокомментированную программу.
Образец выполнения (вариант №10)
Условие задания
Дан массив из $n$ слов произвольной длины (длина слова не превышает $80$ символов). Символами могут быть только заглавные латинские буквы.
В самом коротком слове все согласные буквы заменить на букву $«A»$.
Реализация задачи на языке Pascal
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | program Lab7_variant10; // заголовок программы // раздел объявления типов type // одномерный массив слов, длина которых не превышает 80 символов T_str = array[1..10] of string[80]; T_set = set of char; // множество символов var s: T_str; // одномерный массив для хранения входных слов alf: T_set; // множество заглавных латинских букв glasALF: T_set; // множество гласных латинских букв n: shortInt; // количество слов для обработки i, j: byte; // индексы и счетчики циклов imin: byte; // индекс самого короткого слова minWord: byte; // длина самого короткого слова // проверка, что данное слово состоит только из заглавных лат.букв isGoodWord: boolean; // начало главного блока программы begin writeln; writeln(' Автор - ?????? ?.?., студент гр.????'); writeln(' Вариант №10'); writeln('Дан массив из n слов произвольной длины (длина слова не превышает 80 символов)'); writeln('Символами могут быть только заглавные латинские буквы.'); writeln('В самом коротком слове все согласные буквы заменить на букву «A»'); writeln; alf := ['A' .. 'Z']; // инициализируем множество заглавных латинских букв // инициализируем множество заглавных латинских гласных букв glasALF := ['A', 'E', 'I', 'O', 'U', 'Y']; // в цикле запрашиваем количество входных слов для обработки repeat write('Введите количество слов для обработки (не более 10): '); readln(n); // считываем количество слов от пользователя вводом с клавиатуры // если пользователь ввел недопустимое количество слов, то выдаем сообщение об ошибке if(not(n in [1 .. 10])) then begin writeln; writeln('Ошибка ввода! Вам придется повторить ввод'); writeln; end; // цикл закончится, когда кол-во слов будет на отрезке [1..10] until(n in [1 .. 10]); // для нахождения минимальной длины слова принимаем, что наименьшая длина 81 minWord := 81; // в цикле запрашиваем каждое слово вводом с клавиатуры и делаем его проверку i := 1; while(i <= n) do begin write('Введите ', i, '-е слово: '); readln(s[i]); // считываем текущее слово от пользователя вводом с клавиатуры isGoodWord := true; // предполагаем, что слово состоит из допустимых букв // просматриваем каждую букву текущего слова на допустимое значение for j := 1 to length(s[i]) do begin // если текущий символ слова не является заглавной латинской буквой if not(s[i][j] in alf) then begin writeln('Встретился недопустимый символ в слове!'); writeln; isGoodWord := false; break; end; end; // если все символы текущего слова являются корректными, то if(isGoodWord = true) then begin // если длина текущего слова оказалась меньше минимальной длины среди всех слов if(length(s[i]) < minWord) then begin minWord := length(s[i]); // запоминаем новую минимальную длину imin := i; // запоминаем номер минимального слова end; inc(i); // переходим к обработке следующего слова в массиве end; end; // выводим на экран самое короткое среди всех введенных слов writeln; writeln('Самое короткое слово в исходном массиве слов: ', s[imin]); // заменяем в самом коротком слове все согласные буквы на букву 'A' for i := 1 to length(s[imin]) do // если текущий символ в самом коротком слове является согласной буквой, то if(not (s[imin][i] in glasALF)) then s[imin][i] := 'A'; // заменяем этот согласный символ на букву 'A' // выводим на экран самое короткое слово, в котором сделана замена writeln('После замены в этом слове всех согласных букв на букву ''A'': ', s[imin]); readln; // задержка работы программы, чтобы просмотреть результат end. // конец главного блока программы |
Результат работы программы
ВНИМАНИЕ | Для получения программы своего варианта пишите на наш электронный адрес proglabs@mail.ru |
Добавить комментарий