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

Написать рекурсивную функцию подсчета суммы цифр натурального числа и с ее использованием определить в каком из двух заданных натуральных чисел сумма цифр больше. ( в pascal abc)

👇
Ответ:
lidaat
lidaat
17.05.2023
Function NumSum(n:integer):integer;
var d:integer;
begin
  d:=n mod 10;
  if d=n then NumSum:=n
  else NumSum:=d+NumSum(n div 10)
end;

var a,b,d:integer;
begin
  Write('Введите два числа: '); Read(a,b);
  d:=NumSum(a)-NumSum(b);
  if d>0 then Writeln('Сумма цифр в первом числе больше')
  else
    if d<0 then Writeln('Сумма цифр во втором числе больше')
    else Writeln('Сумма цифр в обоих числах одинакова')
end.
4,5(68 оценок)
Ответ:
Aixerel
Aixerel
17.05.2023
В любой версии заработает, как мне кажется. Попробуй.
4,6(60 оценок)
Открыть все ответы
Ответ:
1inks
1inks
17.05.2023
Хоспаде, чему вас там учат?
#include <iostream>
int main() {
   double a = 5.0, b;
   int c, d = 5;
   std::cin >> b >> d;
   a = a + b - 2;
   d = ++c - a + d;
   a *= c--;
   //Не знаю как это предполагалось записывать в одну строчку, поэтому юзаем чит.
   a /= 10 + 0 * (c /= 2) + 0 * (--b) + 0 * (d *= c + b + a);
   return 0;
}
Должно работать. Если не работает строчку перед return меняем на:
a /= 10 || c /= 2 || --b || d *= c + b + a;
Да, оно ничего не выводит. Ты не написал что оно должно выводить.
P.S. Если у вас не C++, а C меняешь std::cin >> b >> d; на scanf("%f", &a); и scanf("%f", &d); а вместо #include <iostream> пишешь #include <stdio.h>
4,5(91 оценок)
Ответ:
George6666666
George6666666
17.05.2023
Program name;//Имя программы
uses crt;//Запуск программы в консольном режиме НЕОБЯЗАТЕЛЬНО
var 
   a : Integer; 
b : Integer; 
i : Integer; 
c : Integer;
BEGIN //Начало программы 
write('Введите 1 число: ');  readln(a);//Ввод значения первого числа 
c := b-a-1;  write('Введите 2 число: '); 
readln(b);//Ввод значения второго числа 
writeln(a, ' ' , b); //Вывод двух чисел
  writeln(a, ' ' ,a*a,' ' , a*a*a); // Вывод 1 числа, квадрата, куба 
for i := 1 to b-a-1 do  
begin   
a := a + 1;   
writeln(a, ' ',a*a, ' ', a*a*a); // Вывод всех чисел от a до b 
end;         
writeln(b, ' ' ,b*b,' ' , b*b*b);// Вывод 2 числа, квадрата, куба 
ReadKey;  
end. //Конец программы
4,5(27 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ