М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Katyag2000
Katyag2000
27.11.2020 18:37 •  Информатика

Составить программу в pascal help ! подготовка к в тексте, состоящем из 3 слов, проверить, есть ли заданное слово и сколько раз оно повторяется. если такого слова нет, то выдать сообщение.

👇
Ответ:
nika1557
nika1557
27.11.2020
Var
  s, w: string;
  i, ls, lw, p, n: integer;

begin
  Write('Введите текст из трех слов: ');
  Readln(s);
  Write('Введите искомое слово: ');
  Readln(w);
  ls := Length(s);
  lw := Length(w);
  n := 0;
  i := 1;
  p := Pos(w, s);
  while p > 0 do
  begin
    n := n + 1;
    i := p + lw + 1;
    s := Copy(s, i, ls - i + 1);
    ls := Length(s);
    p := Pos(w, s)
  end;
  if n = 0 then Writeln('Искомое слово не встречается в тексте')
  else if n = 1 then Writeln('Искомое слово встречается 1 раз')
  else Writeln('Искомое слово встречается ', n, ' раза')
end.

Тестовое решение:

Введите текст из трех слов: Мама мыла раму
Введите искомое слово: Папа
Искомое слово не встречается в тексте

Введите текст из трех слов: Мама мыла раму
Введите искомое слово: мыла
Искомое слово встречается 1 раз

Введите текст из трех слов: ааа ааа
Введите искомое слово: ааа
Искомое слово встречается 2 раза
4,4(91 оценок)
Открыть все ответы
Ответ:
jvhhvcx
jvhhvcx
27.11.2020
Const
  n=8;
var
  aNam, aFam, aDat: array[1..n] of string;
  i: integer;

begin
  aNam[1]:='Олег'; aFam[1]:='Бубенков'; aDat[1]:='1993';
  aNam[2]:='Игорь'; aFam[2]:='Бросов'; aDat[2]:='1991';
  aNam[3]:='Тимур'; aFam[3]:='Наружный'; aDat[3]:='1961';
  aNam[4]:='Анастасия'; aFam[4]:='Боброва'; aDat[4]:='1985';
  aNam[5]:='Михаил'; aFam[5]:='Тапаров'; aDat[5]:='1957';
  aNam[6]:='Евгений'; aFam[6]:='Костарева'; aDat[6]:='1992';
  aNam[7]:='Мария'; aFam[7]:='Никитин'; aDat[7]:='1977';
  aNam[8]:='Ксения'; aFam[8]:='Бабенкова'; aDat[8]:='1978';
  writeln('Лица, чьи фамилии начинаются на букву "Б"');
  for i := 1 to n do
    if aFam[i][1] = 'Б' then
      writeln(aNam[i],' ',aFam[i], ' (', aDat[i], ')')
end.

тестовый прогон:

Лица, чьи фамилии начинаются на букву "Б"
Олег Бубенков (1993)
Игорь Бросов (1991)
Анастасия Боброва (1985)
Ксения Бабенкова (1978)

Возможна также более "современная" запись программы

const
  n = 8;

type
  tP = record
    Nam: string;
    Fam: string;
    Dat: string
  end;

var
  M: array[1..n] of tP;
  i: integer;

begin
  with M[1] do begin Nam := 'Олег'; Fam := 'Бубенков'; Dat := '1993' end;
  with M[2] do begin Nam := 'Игорь'; Fam := 'Бросов'; Dat := '1991' end;
  with M[3] do begin Nam := 'Тимур'; Fam := 'Наружный'; Dat := '1961' end;
  with M[4] do begin Nam := 'Анастасия'; Fam := 'Боброва'; Dat := '1985' end;
  with M[5] do begin Nam := 'Михаил'; Fam := 'Тапаров'; Dat := '1957' end;
  with M[6] do begin Nam := 'Евгений'; Fam := 'Костарева'; Dat := '1992' end;
  with M[7] do begin Nam := 'Мария'; Fam := 'Никитин'; Dat := '1977' end;
  with M[8] do begin Nam := 'Ксения'; Fam := 'Бабенкова'; Dat := '1978' end;
  writeln('Лица, чьи фамилии начинаются на букву "Б"');
  for i := 1 to n do
    With M[i] do begin
      if Fam[1] = 'Б' then
        writeln(Nam, ' ', Fam, ' (', Dat, ')')
    end
end.
4,7(12 оценок)
Ответ:
Egorka200308
Egorka200308
27.11.2020
Const
  n=8;
var
  aNam, aFam, aDat: array[1..n] of string;
  i: integer;

begin
  aNam[1]:='Олег'; aFam[1]:='Бубенков'; aDat[1]:='1993';
  aNam[2]:='Игорь'; aFam[2]:='Бросов'; aDat[2]:='1991';
  aNam[3]:='Тимур'; aFam[3]:='Наружный'; aDat[3]:='1961';
  aNam[4]:='Анастасия'; aFam[4]:='Боброва'; aDat[4]:='1985';
  aNam[5]:='Михаил'; aFam[5]:='Тапаров'; aDat[5]:='1957';
  aNam[6]:='Евгений'; aFam[6]:='Костарева'; aDat[6]:='1992';
  aNam[7]:='Мария'; aFam[7]:='Никитин'; aDat[7]:='1977';
  aNam[8]:='Ксения'; aFam[8]:='Бабенкова'; aDat[8]:='1978';
  writeln('Лица, чьи фамилии начинаются на букву "Б"');
  for i := 1 to n do
    if aFam[i][1] = 'Б' then
      writeln(aNam[i],' ',aFam[i], ' (', aDat[i], ')')
end.

тестовый прогон:

Лица, чьи фамилии начинаются на букву "Б"
Олег Бубенков (1993)
Игорь Бросов (1991)
Анастасия Боброва (1985)
Ксения Бабенкова (1978)

Возможна также более "современная" запись программы

const
  n = 8;

type
  tP = record
    Nam: string;
    Fam: string;
    Dat: string
  end;

var
  M: array[1..n] of tP;
  i: integer;

begin
  with M[1] do begin Nam := 'Олег'; Fam := 'Бубенков'; Dat := '1993' end;
  with M[2] do begin Nam := 'Игорь'; Fam := 'Бросов'; Dat := '1991' end;
  with M[3] do begin Nam := 'Тимур'; Fam := 'Наружный'; Dat := '1961' end;
  with M[4] do begin Nam := 'Анастасия'; Fam := 'Боброва'; Dat := '1985' end;
  with M[5] do begin Nam := 'Михаил'; Fam := 'Тапаров'; Dat := '1957' end;
  with M[6] do begin Nam := 'Евгений'; Fam := 'Костарева'; Dat := '1992' end;
  with M[7] do begin Nam := 'Мария'; Fam := 'Никитин'; Dat := '1977' end;
  with M[8] do begin Nam := 'Ксения'; Fam := 'Бабенкова'; Dat := '1978' end;
  writeln('Лица, чьи фамилии начинаются на букву "Б"');
  for i := 1 to n do
    With M[i] do begin
      if Fam[1] = 'Б' then
        writeln(Nam, ' ', Fam, ' (', Dat, ')')
    end
end.
4,6(39 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ