Посчитать общее количество латинских букв во всех строках - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

Создать линейный однонаправленный список строк. Посчитать общее количество латинских букв во всех строках.

Решение задачи: «Посчитать общее количество латинских букв во всех строках»

textual
Листинг программы
type
  Link = ^Number;
  Number = record
    Cislo: string;
    NextRec: Link;
  end;
 
var
  i, c: integer;
  a: string;
  First, tmp: Link;
 
procedure Add(var spis1: Link; znach1: string );
var
  tmp: Link;
begin
  if spis1 = nil then {Проверяем не пуст ли список, если пуст, то }
  begin
    New(spis1);
    tmp := spis1;
  end
  else {в случае если список не пуст}
  begin
    tmp := spis1;
    while tmp^.nextrec <> nil do
      tmp := tmp^.nextrec; {ставим tmp на последний элемент списка}
    New(tmp^.nextrec);
    tmp := tmp^.nextrec;   {переносим tmp на новый элемент}
  end;
  tmp^.nextrec := nil; {зануляем указатель}
  tmp^.cislo := znach1; {заносим значение}
end;
 
procedure ShowList(first: link);
begin
  Writeln('Список элементов: ');
  if first = nil then 
    writeln('Список пуст...')
  else
  begin
    while first <> nil do
    begin
      write(first^.cislo, ' ');
      first := first^.nextrec;
    end;
  end;
end;
 
begin
  Writeln('Укажите длину списка: ');
  Readln(c);
  first := nil;
  Writeln('Введите строки:');
  for i := 1 to c do
  begin
    readln(a);
    add(first, a);
  end;
  ShowList(first);
  c := 0;
  while first <> nil do
  begin
    for i := 1 to length(first^.cislo) do
      if first^.cislo[i] in ['A'..'Z', 'a'..'z'] then
        inc(c);
    first := first^.nextrec;
  end;
  writeln;
  writeln('Количество латинских букв во всех строках: ', c);
end.

Объяснение кода листинга программы

  1. Объявлены типы данных: ссылка на число (Link) и само число (Number).
  2. Объявлены переменные: i, c, a, First, tmp.
  3. Задана функция Add, которая добавляет новый элемент в список. Если список пуст, то создается новый элемент и он становится первым в списке. Если список не пуст, то новый элемент добавляется в конец списка. Функция принимает переменную spis1, которая является ссылкой на первый элемент списка, и строку znach1, которую нужно добавить в список.
  4. Задана функция ShowList, которая выводит все элементы списка на экран. Если список пуст, то выводится соответствующее сообщение. Функция принимает ссылку на первый элемент списка first.
  5. В основной части программы пользователю предлагается указать длину списка.
  6. Создается пустой список, и пользователю предлагается ввести строки.
  7. Каждая введенная строка добавляется в список с помощью функции Add.
  8. Выводится сообщение «Список элементов:», и все элементы списка выводятся на экран с помощью функции ShowList.
  9. Создается цикл, который проходит по всем элементам списка и подсчитывает количество латинских букв в каждой строке.
  10. В конце программы выводится общее количество латинских букв во всех строках списка.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.857 из 5
Похожие ответы