Напишите программу которая вычисляет сколько раз введенное с клавиатуры число встречается в массиве...

программа pascal массив ввод с клавиатуры подсчет числа поиск в массиве алгоритм
0

напишите программу которая вычисляет сколько раз введенное с клавиатуры число встречается в массиве который нужно ввести с клавиатуры в строчку ( в pascal)

avatar
задан 19 дней назад

3 Ответа

0

Программа вычисляет количество вхождений введенного с клавиатуры числа в массив, который также вводится с клавиатуры.

avatar
ответил 19 дней назад
0

Для решения данной задачи в Pascal можно написать следующий код:

program CountOccurrences;

var
  num, n, i, count: integer;
  arr: array of integer;

begin
  count := 0;

  write('Введите число: ');
  readln(num);

  write('Введите размер массива: ');
  readln(n);

  SetLength(arr, n);

  writeln('Введите элементы массива через пробел: ');
  for i := 0 to n - 1 do
  begin
    read(arr[i]);
  end;

  for i := 0 to n - 1 do
  begin
    if arr[i] = num then
    begin
      count := count + 1;
    end;
  end;

  writeln('Число ', num, ' встречается ', count, ' раз(а) в массиве.');
end.

Данный код сначала запрашивает у пользователя число, затем запрашивает размер массива и сам массив. После этого происходит подсчет количества вхождений введенного числа в массиве и выводится результат.

avatar
ответил 19 дней назад
0

Конечно, давайте рассмотрим, как написать программу на языке Pascal, которая вычисляет, сколько раз введенное число встречается в массиве. Мы будем запрашивать у пользователя ввод массива в одну строку, а затем число, количество вхождений которого нужно определить.

План решения:

  1. Чтение массива: Мы будем считывать массив в одну строку, разделяя элементы пробелами.
  2. Чтение числа: Далее мы запрашиваем число, количество вхождений которого нужно найти.
  3. Подсчет вхождений: Пройдем по массиву и подсчитаем, сколько раз введенное число встречается в нем.
  4. Вывод результата: Выведем на экран количество вхождений.

Пример программы на Pascal:

program CountOccurrences;

uses
  SysUtils;

var
  inputLine: string;
  inputArray: array of Integer;
  i, count, num, value: Integer;
  inputNum: string;

begin
  // Ввод массива в одну строку
  Write('Введите элементы массива (разделенные пробелами): ');
  ReadLn(inputLine);
  
  // Разделяем строку на части и преобразуем их в числа
  i := 0;
  for inputNum in inputLine.Split([' ']) do
  begin
    if TryStrToInt(inputNum, value) then
    begin
      SetLength(inputArray, i + 1);
      inputArray[i] := value;
      Inc(i);
    end;
  end;

  // Ввод числа для подсчета вхождений
  Write('Введите число, для которого нужно подсчитать вхождения: ');
  ReadLn(num);

  // Подсчитываем количество вхождений
  count := 0;
  for i := 0 to High(inputArray) do
  begin
    if inputArray[i] = num then
      Inc(count);
  end;

  // Вывод результата
  WriteLn('Число ', num, ' встречается ', count, ' раз(а) в массиве.');
end.

Пояснение:

  • uses SysUtils: Этот модуль используется для работы с функциями преобразования строк в числа.
  • Split: Метод Split используется для разделения строки на подстроки на основе заданного разделителя. В данном случае, это пробел.
  • TryStrToInt: Функция TryStrToInt безопасно преобразует строку в число, возвращая true, если операция успешна, и false в противном случае. Это помогает избежать ошибок при преобразовании.
  • SetLength: Эта процедура изменяет размер динамического массива.
  • Inc: Процедура Inc увеличивает значение переменной на единицу.

Эта программа позволит вам вводить массив и число с клавиатуры, а затем корректно подсчитывать количество вхождений этого числа в массив.

avatar
wss
ответил 19 дней назад

Ваш ответ

Вопросы по теме