Са
Сангерим

Помогите преобразовать код на С++ или Java..

Написал программу на Паскале: среди всех трехзначных чисел находит числа, равные сумме факториалов своих цифр
нужно преобразовать код на
uses crt;
function Fac(n:word):longint;
begin
if n=0 then Fac:=1
else Fac:=n*Fac(n-1);
end;
var i,a,b,c:word;
begin
clrscr;
for i:=100 to 999 do
begin
a:=i div 100;
b:=i div 10 mod 10;
c:=i mod 10;
if Fac(a)+Fac(b)+Fac(c)=i then write(i,' ');
end;
readln
end.

...на С++ или Java Спасибо!

к сожалению плохо знаком с С++ и Java..поєтому обращаюсь за помощу

НГ
Наталия Гончарова

С++
Лучше так
#include
using namespace std;

long fac(int x){
if(x==0) return 1;
return x*fac(x-1);}
main(){
for(int i=100;i<=999;i++)if( i == fac(i/100)+fac((i/10)%10)+fac(i%10)) cout<< i < }

Ниже сайт для проверки

Екатерина Сизова
Екатерина Сизова

Вот одна из версий без оформления заголовками на C++.
И без проверки размера типа данных - но вроде до 10 такой факториал выдержит. И без проверки алгоритма
просто переписываю влоб то что предложено в синтаксисе для плюсов

long fac(int x){if(x<0) exit(-1);return x?fac(x-1):1;}
main(){
for(int i=100;i<=999;i++)if( i == fac(i/100)+fac((i/10)%10)+fac(i%10)) cout<< i < }

(В С и С++ деление целых даёт целое, а % взятие остатка)

Полина Тарасова
Полина Тарасова

а вот так ещё короче) ) )

public class Roma { public static void main(String[] args) { System.out.println(145); } }

Похожие вопросы
Помогите с Java Script пожалуйста (код внутри)
Помогите исправить ошибку в коде на Java
помогите с кодом на JAVA
Как преобразовать с java проги на Eclipse в .exe. И как java прогу сделать в расширение .jar
Помогите пожалуйста с кодом Java:
Помогите с кодом java
Программисты помогите с кодом в java "Eclipse"
Помогите с кодом Java.
Срочно! Помогите перевести код java на с++ или paskal !!!
Из-за чего этот код не работает ?(java)