Дан массив из n четырехзначных натуральных чисел.Вывести на экран только те,у которых сумма первых двух цифр равна сумме двух последних.
помагите сделать в паскале
Выкладывайте свои идеи и наработки. Если их нет и нет желания делать что-либо самостоятельно - обращайтесь в платный раздел.
function Summ(n:integer):boolean;
var a,b,c,d:byte;
begin
a:=n div 1000;
b:=n div 100 mod 10;
c:=n div 10 mod 10;
d:=n mod 10;
if a+b=c+d then Summ:=true
else Summ:=false;
end;
В программе
for i:=1001 to 9999 do
begin
if Summ(i) then writeln(i);
if i mod 20=0 then readln;//это чтоб все числа увидеть
end;
Функция вроде правильно написана,а вот в программе 2 косяка. Во-первых, почему i от 1001 до 9999? У Вас этот массив уже дан,и числа там конкретные,а не все возможные четырёхзначные.
Во-вторых, Вам же надо на С писать. Pascal - это, конечно, хороший язык, но, всё-таки, не С.
C++
Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)