Вопрос задан 28.10.2023 в 10:23. Предмет Информатика. Спрашивает Макеева Томирис.

Напишите программу в паскале Дано целое четырёхзначное число N и целое число k. Написать

программу, подсчитывающую сумму тех цифр числа N, которые больше k
0 0
Перейти к ответам

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

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

Ответ:

есть более другой вариант - через преобразование типов (если проходили такое)

Объяснение:

program FourDigit;

var

   n,k, sumN : integer;

begin

   SumN :=0;

   Write ('Input n, k : ');

   ReadLn (n,k);

   if n div 1000 > k then sumN := sumN + n div 1000;

   if n mod 1000 div 100 > k then sumN := sumN + n mod 1000 div 100;

   if n mod 1000 mod 100 div 10 > k then sumN := sumN + n mod 1000 mod 100 div 10;

   if n mod 1000 mod 100 mod 10 > k then sumN := sumN + n mod 1000 mod 100 mod 10;;

   WriteLn ('Sum >k is ',SumN);

end.    

0 0
Отвечает Михайлова Яна.

===== PascalABC.NET =====

begin

 var (n, k) := ReadInteger2('Введите N и k:');

 var s := 0;

 n := Abs(n); // в условии не сказано, что число всегда подожительное!

 while n > 0 do

 begin

   var d := n mod 10;

   if d > k then

     s += d;

   n := n div 10  

 end;

 Print(s)

end.

Есть такжен более короткое решение:

begin

 var (n, k) := ReadInteger2('Введите N и k:');

 var a := Abs(n).ToString.ToCharArray.Select(c -> c.ToDigit).ToArray;

 a.Where(p -> p > k).Sum.Println

end.


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Здравствуйте, это Bing. Я могу помочь вам с написанием программы на Паскале. Вот один из возможных вариантов решения вашей задачи: ```pascal program SumOfDigits; var N, k, sum, digit: integer; begin writeln('Введите четырехзначное число N:'); readln(N); writeln('Введите число k:'); readln(k); sum := 0; // инициализируем сумму нулем while N > 0 do // пока N не равно нулю begin digit := N mod 10; // находим последнюю цифру числа N if digit > k then // если цифра больше k sum := sum + digit; // добавляем ее к сумме N := N div 10; // отбрасываем последнюю цифру числа N end; writeln('Сумма цифр числа N, которые больше k, равна ', sum); end. ``` Эта программа считывает два целых числа N и k с клавиатуры, затем подсчитывает сумму тех цифр числа N, которые больше k, и выводит результат на экран. Для этого программа использует цикл while и операции деления и остатка от деления. Надеюсь, это поможет вам понять логику решения. ????
0 0

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

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

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

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