Вопрос задан 12.07.2023 в 19:22. Предмет Информатика. Спрашивает Забиров Руфат.

ПАСКАЛЬ Дан массив, содержащий 10 неотрицательных целых чисел, не превышающих 10 000. Опишите на

одном из языков программирования алгоритм, позволяющий найти и вывести на экран минимальное из всех содержащихся в массиве трёхзначных чисел, десятичная запись которых оканчивается на 4, но не на 44. Если подходящих чисел в массиве нет, программа должна вывести число 0. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из описанных. ______________________________ const N=10; var a: array [1..N] of integer; i, j, x, y: integer; begin for i:=1 to N do read(a[i]); … end.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Маньков Кирилл.

const N=10;

var

a: array [1..N] of integer;

i, j, x, y: integer;

begin

for i:=1 to N do

read(a[i]);

x:=1000;

for i:=1 to N do

if (a[i]mod 10=4)and(a[i]mod 100<>44)and(a[i]div 100>0)and(a[i]div 1000=0)and(a[i]<x)

then

x:=a[i];

if x=1000 then

write(0)

else

write(x)

end.


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

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

pascal
const N = 10; var a: array [1..N] of integer; i, minThreeDigitEndingWith4: integer; begin minThreeDigitEndingWith4 := 1000; // Изначально устанавливаем значение большое, чтобы найти минимальное трёхзначное число, удовлетворяющее условиям // Читаем элементы массива for i := 1 to N do read(a[i]); // Находим минимальное трёхзначное число, удовлетворяющее условиям for i := 1 to N do begin if (a[i] >= 100) and (a[i] <= 999) and (a[i] mod 100 = 4) and (a[i] mod 100 <> 44) then begin if a[i] < minThreeDigitEndingWith4 then minThreeDigitEndingWith4 := a[i]; end; end; // Выводим результат if minThreeDigitEndingWith4 = 1000 then writeln('0') // Если не найдено подходящее число, выводим 0 else writeln(minThreeDigitEndingWith4); // Иначе выводим найденное минимальное число end.

Пояснение:

  1. В начале устанавливаем minThreeDigitEndingWith4 равным 1000, чтобы обеспечить возможность нахождения минимального трёхзначного числа, удовлетворяющего условиям (так как 1000 больше всех трёхзначных чисел).
  2. Затем читаем элементы массива и проверяем каждый элемент на соответствие условиям: число должно быть трёхзначным и заканчиваться на 4, но не на 44.
  3. Если найдено подходящее число, проверяем, является ли оно минимальным среди уже найденных подходящих чисел. Если да, обновляем значение minThreeDigitEndingWith4.
  4. После прохождения всех элементов массива, выводим результат. Если не найдено подходящее число, выводим 0, иначе выводим найденное минимальное число.
0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос