Формирование символьного массива длиной N элементов, содержащего только цифры

Страницы работы

6 страниц (Word-файл)

Содержание работы

Министерство образования и науки

Государственное образовательное учреждение профессионального высшего обучения

РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ГИДРОМЕТИОРАЛОГИЧЕСКИЙ УНИВКРСИТЕТ

Кафедра: МИТ

Дисциплина "Информатика"

Отчёт по лабораторной работе №4

Вариант№26

Выполнил студент: Завьялов В.С.

Факультет: Океанология.

Курс: Первый.

Группа: О-193

Проверил: Сидоров В.А.

Санкт-Петербург

2005 год

Задание.

Формирование символьного массива длиной N элементов, содержащего только цифры. (при заполнении его с клавиатуры пропускать не цифровые символы.) подсчёт и вывод на экран цифры, встретившейся чаще других (и сколько раз она встретилась).

Таблица идентификаторов.

Имя

Тип

Размер, байт

Назначение

N

Целый

2

Количество символов

Ni

Целый

2

Количество чисел

Nmax

Целый

2

Количество чисел

I

Целый

2

Счётчик

J

Целый

2

Счётчик

Ai

Символьный

6

Символ

SimI

Символьный

6

Символ

SimMax

Символьный

6

Символ

Simbol_Arrey

Название программы

Формирование символьного массива

Блок-схема.

 


   Введи N от 1 до 100

 


   N

да

 
 


    N от 1 до 100

Введите элементы

массива

 


   i:1,N

    A[i]

 


   i:1,N

нет

 
 


    ORD(Ai)>=48

    ORD(Ai)<=57

     A[i]

 


    1

   1

 


                              Faut, Kovin.RES

 


       Fout, новый массив

 


  i:1,N

 


    i mod 25=0

да

 

да

 
 


      Fout

 


     Nmax=0

      SimMax:=A[1]

 


i:1,N

    SimI:=A[i]

Ni:=0

j:1,N

     A[j]=SimI

 


    2

 


Y

 

X

 
         2

 


          Ni:=Ni+1

 


       Ni>Nmax

Namx:=Ni

SimMax:=SimI

да

 

нет

 

нет

 

да

 
 


Nmax=1

 


   Все символы встречаются                                                                         Символ’, SimMax,’  

             по 1 разу                                                                                           встретился ‘, Nmax,’ раз

 


      Nmax mod 10<5

      Nmax mod 10>1

      Nmax div 10<>1

 


           Fout

 


      конец

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

PROGRAM   Simbol_Arrey;

{Лабораторная работа №4

       вариант 26

 гр. О-193 Ст. Завьялов В.С.}

var

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

 Ai,SimI,SimMax  :char;

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

 fout            :text;

begin

 writeln('введите N от 1 до 100');

 readln(N);

 if (N<1) and (N>100) then

  writeln('не верно введено число')

 else

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

   for i:=1 to N do

   begin

   readln(Ai);

   if (ORD(Ai)>=48) and (ORD(Ai)<=57) then

   A[i]:=Ai

   end;

   begin

   Assign(Fout,'Zavyalov.RES');

   ReWrite(Fout);

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

   for i:=1 to N do

   begin

    write(Fout,A[i]:3);

    if i mod 25=0 then writeln(Fout);

   end;

   writeln(Fout);

   Nmax:=0;

   SimMax:=A[1];

   for i:=1 to N do

   begin

     SimI:=A[i];

     Ni:=0;

     for j:=1 to N do

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

     if Ni>Nmax then

     begin

      Nmax:=Ni;

      SimMax:=SimI;

     end;

   end;

   if Nmax=1 then

     write(Fout,'все символы встречаются по 1 разу')

   else

     write(Fout,'символ ',SimMax,' встретился ',Nmax,' раз');

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

     writeln(Fout,' ');

  end;

  Close(Fout);

END.

Результат

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

3  5  8  3  6  5  3  7  9  3

Символ 3 встретился 4 раза

Похожие материалы

Информация о работе

Предмет:
Информатика
Тип:
Отчеты по лабораторным работам
Размер файла:
68 Kb
Скачали:
0