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

Не понимаю даже, как к подступиться. на языке программирования паскаль написан текст программы. получив на вход число x, этот алгоритм печатает два числа a и b. укажите наименьшее из таких чисел x, при котрых алгоритм печатает сначала 3, а потом 7. var x, a, b: integer; begin readln(x); a: =0; b: =0; while x> 0 do begin a: =a + 1; b: =b + (x mod 10); x: =x div 10; end; writeln(a); write(b); end.

👇
Ответ:
ainurka88akgmailcom
ainurka88akgmailcom
14.11.2020
Для начала стоит понять, что делает программа. При выполнении данного алгоритма из числа х пошагово выделяется последний разряд (последняя цифра числа х) и данная цифра суммируется к числу b. Число а содержит количество разрядов (количество цифр) в числе х.
Задача: получить a = 3, b = 7
Для этого необходимо взять трехзначное число, сумма цифр которого равна 7, наименьшее подходящее число - 106 (Число должно быть трехзначное - значит меньше 100 оно быть не может, но оно должно быть как можно ближе к 100, поэтому, например, число 115 не подойдет, т.к. по заданию нужно указать наименьшее из подходящих чисел, т.е. 106).
4,5(47 оценок)
Открыть все ответы
Ответ:

Вот у тебя а, b и c интеджер (целые)

Первое действие, которое ты делаешь: С= a+b

a+b = целое + целое = целое, ошибки нету

Второе действие: С = a-b = целое - целое = целое, ошибку не выдает.

А вот далее ты делишь целое на целое. C= a/b

Предположим что а = 5, b=2. С =5/2= 2.5

Но задано то С у тебя как целое...

В общем чтобы не было конфликтов с остатком от деления, делением и делением без остатка, замени в варе

integer на real.

А еще учитель может придраться что d объявлена, но не используется))

Удали строчку с объявлением d

4,5(35 оценок)
Ответ:
дариана2006
дариана2006
14.11.2020

var

 number: integer;

begin

 var size := readinteger;

 var max := -32768;

 for var i := 1 to size do

 begin

   number := readinteger;

   if (number mod 4 = 0) and (number > max) then

     max := number;

 end;

 write(max);

end.

Объяснение:

var

 number: integer;  // Целочисленная переменная, хранящая вводимые с клавиатуры числа

begin  // Начало программы

 var size := readinteger;  // Считываем размер последовательности с клавиатуры

 var max := -32768;  // integer принадлежит диапазону [-32 768…32 767], взял за максимум самое маленькое число

 for var i := 1 to size do  // Идём от 1 до размера последовательности

 begin  // Начало цикла

   number := readinteger; // Считываем число последовательности с клавиатуры

   if (number mod 4 = 0) and (number > max) then  // Если число делится на 4 без остатка и оно > max

     max := number;  // max присваиваем number

 end;  // Конец цикла

 write(max);  // Выводим ответ

end. // Конец программы

4,7(54 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ