Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Текст программы. PROGRAM Simbol_Array;






PROGRAM Simbol_Array;

{ Программа Лабораторной работы N 4

Вариант N 31.

гр. Я-007, ст. А.Я. Умненькая }

VAR

N, Ni, Nmax, i, j: integer;

SimI, SimMax: char;

Simbol: array[1..100] of char;

Fout: text;

BEGIN {Выполняемый блок. Первый раздел – ввод данных }

N: =0;

writeln('Вводить по одному не более 100 символов, ');

writeln(' Для завершения – ввести символ "." ');

repeat

writeln('Введи очередной символ');

N: = N + 1;

readln(Simbol[N]);

until (N = 100) or (Simbol[N] = '.');

if Simbol[N]= '.' then N: = N - 1; { Последний символ, если он – точка, рассматриваться не будет }

if N < 1 then

writeln('Нельзя рассматривать меньше 1 символа')

else

begin

Assign(Fout, 'UMNIK4.RES'); {связали Fout с UMNIK.DAT}

ReWrite(Fout); {открыли файл для записи }

writeln(Fout, 'Исходный массив из ', N, ' элементов');

for i: =1 to N do

begin

write(Fout, Simbol[i]: 2); { печать в текущей строке}

if i mod 30 = 0 then writeln(Fout); { если номер

элемента кратен 30 переходим на новую строку}

end;

writeln(Fout);

{ Основной раздел – поиск номера }

Nmax: = 0; { количество наиболее частого символа }

SimMax: = Simbol[1];

for i: =1 to N do { внешний цикл перебора символов }

begin

SimI: = Simbol[i];

Ni: = 0;

for j: =i to N do { внутренний цикл перебора символов }

if Simbol[j] = SimI then Ni: =Ni+1;

if Ni> Nmax then {если этот символ встретился чаще, }

begin {запомним его и число его вхождений}

Nmax: = Ni;

SimMax: = SimI;

end;

end;

{ Раздел вывода результатов поиска }

if Nmax = 1 then

writeln(Fout, 'Все символы входят по 1 разу')

else

write(Fout, 'Символ " ', SimMax, '" встретился ', Nmax,

' раз');

{ далее определим, если Nmax кончается на 2, 3, 4 и не во втором десятке, изменим окончание, например, " 23 раза" }

if (Nmax mod 10 < 5) and (Nmax mod 10 > 1) and

(Nmax div 10 < > 1)

then writeln(Fout, 'а');

end;

Close(Fout);

END.

Результаты работы

(содержимое файла UMNIK.RES)

 

Исходный массив из 95 элементов

Н е г о в о р и т е м н е, о н у м е р - о н ж и в е т! П

У с т ь ж е р т в е н н и к р а з б и т - о г о н ь е щ е п

Ы л а е т, п у с т ь р о з а с о р в а н а - о н а е щ е ц

В е т е т

Символ " е" встретился 14 раз


Варианты заданий

Таблица 17. Варианты заданий лабораторной работы №4

№ вар. Задание Печатать элементы массива по Тип обрабатыв. данных
штук: формату:
  Формирование массива длиной не более ста элементов, заполнения его с клавиатуры (вводя по одному произвольному символу пока не встретится символ '! '), исключение из массива всех символов – цифр и пробелов со сдвигом остающихся элементов массива на освободившиеся места.   : 1 Символьн.
  Нахождение номера наименьшего элемента в массиве заданной длины среди всех положительных элементов. Длина массива вводится с клавиатуры.   : 11 Веществ.
  Вычисление суммы " K " слагаемых – элементов массива, начиная с третьего по порядку, и суммируя только элементы с нечетными номерами. Длина массива и количество суммируемых элементов вводится с клавиатуры.   : 9: 2 Веществ.
  Перестановка максимального и минимального по значению элементов массива. Значение длины массива вводится с клавиатуры.   : 7 Целые
  Вычисление суммы всех четных (по значению) элементов массива, расположенных на нечетных по порядку местах. Длина массива вводится с клавиатуры.   : 6 Целые
  Нахождение максимального значения в массиве среди всех четных чисел. Длина массива вводится с клавиатуры.   : 6 Целые
  Вычисление суммы элементов массива, начиная с " К " -го по порядку и до элемента, равного нулю (если такой элемент встретится; иначе – до конца массива). " K ", длину массива и значения элементов вводить с клавиатуры.   : 12 Веществ.
  Перестановка " i" -го и " j" -го по порядку элементов массива, при условии, что они с разными знаками. Если они с одинаковыми знаками, все элементы между ними обнулить. Длина массива и номера переставляемых элементов вводятся с клавиатуры.   : 6 Целые
  Вычисление суммы элементов массива, расположенных в конце массива, причем складывать нужно, начиная от конца массива, столько элементов, пока сумма не превысит значения 20.5 (или не будут сложены все элементы). Длина массива вводится с клавиатуры. Печатать сумму и количество сложенных элементов   : 10: 3 Веществ.
  Нахождение максимального значения в массиве среди всех элементов после первого отрицательного. Длина и значения элементов массива вводятся с клавиатуры.   : 5 Целые
  Вычисление суммы элементов массива начиная с первого элемента со значением больше 0.9, и пока сумма по модулю не превысит заданного значения. Длина массива, значения элементов и предельное значение (признак для окончания суммирования) вводятся с клавиатуры.   : 9: 3 Веществ.
  Перестановка максимального и минимального по коду символов массива длиной N элементов. Значение длины массива и сами элементы массива вводятся с клавиатуры. Массив печатать до и после перестановки.   : 2 Символьн.
  Формирование массива длиной N элементов, заполняя его с клавиатуры (вводя сначала количество символов, и затем по одному произвольному символу пока не введется указанное количество), подсчет и вывод на экран количества символов из диапазона от 'А' до 'я' (кириллицы).   : 2 Символьн.
  Вычисление среднего значения в одномерном массиве для всех элементов между первым и вторым нулем в массиве (или от первого нулевого значения до конца массива). Длина и значения элементов массива вводятся с клавиатуры.   : 12 Веществ.
  Перестановка одномерного массива в обратном порядке. Значение длины массива вводится с клавиатуры. Массив печатать до и после перестановки.   : 8 Целые
  Вычисление в одномерном массиве целой части среднего значения всех положительных четных по величине чисел. Длина массива вводится с клавиатуры.   : 8 Целые
  Исключение из массива всех пробелов и запятых со сдвигом остающихся элементов массива на освободившиеся места. Исходный массив длиной N символов (где N не больше 100) вводится из текстового файла.   : 1 Символьн.
  Вычисление целого среднеарифметического значения среди всех отрицательных элементов массива (содержащего и положительные значения), расположенных начиная с " К " -го по порядку элемента. Длина массива и значение " К " вводятся с клавиатуры.   : 6 Целые
  Определение длины самой длинной последовательности из расположенных подряд в одномерном логическом массиве значений TRUE и вывод найденной длины на экран. Длина массива и значения TRUE и FALSE вводятся с клавиатуры в форме F (для FALSE) и T (TRUE).   : 7 Логич.
  Вычисление среднеарифметического всех положительных элементов массива (содержащего и отрицательные значения), длина которого вводится с клавиатуры.   : 10: 2 Веществ.
  Поиск места (номера элемента) в массиве, где первый раз подряд встречаются два четных числа. Длина массива вводится с клавиатуры.   : 6 Целые
  Формирование логического массива длиной N элементов, заполнения его с клавиатуры (вводя 1 – вместо TRUE и 0 – вместо FALSE'), подсчет и вывод на экран количества значений TRUE и FALSE и сообщение, чего было больше.   : 6 Логич.
  Поиск номеров двух последних расположенных подряд отрицательных элементов в массиве. Длина массива вводится с клавиатуры.   : 10 Веществ.
  Формирование логического массива, заполняя его с клавиатуры (вводя вместо TRUE четные числа, а вместо FALSE – нечетные и заканчивая, когда встретится число 0); подсчет и вывод на экран количества значений TRUE и FALSE и сообщение, каких значений было больше.   : 5 Логич.
  Нахождение номера максимального значения в массиве после первого отрицательного и не далее второго отрицательного. Длина массива вводится с клавиатуры.   : 10: 3 Веществ.
  Формирование символьного массива длиной N элементов, содержащего только цифры. (При заполнении его с клавиатуры пропускать не цифровые символы.) Подсчет и вывод на экран цифры, встретившейся чаще других (и сколько раз она встретилась.)   : 3 Символьн.
  Исключение из массива всех отрицательных по значению элементов со сдвигом элементов массива на освободившиеся места. Длина массива вводится с клавиатуры.   : 9: 2 Веществ.
  Переписывание из исходного в выходной массив всех нечетных значений в начало, а всех четных – в конец. Длина исходного массива вводится с клавиатуры.   : 6 Целые
  Определение номера элемента, с которого начинается самая длинная последовательность четных чисел, расположенных в массиве подряд. Длина массива вводится с клавиатуры   : 6 Целые
  Определение номера элемента, с которого начинается самая длинная последовательность из отрицательных чисел, расположенных в массиве подряд. Длина массива вводится с клавиатуры.   : 10: 2 Веществ.
  Формирование символьного массива длиной не более ста элементов, заполнение его с клавиатуры (вводя по одному произвольному символу пока не встретится символ "."), подсчет и вывод на экран символа, который встретился чаще других и число его повторений   : 2 Символьн.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.