Даны два трехзначных числа.Найти сумму цифр этих чисел,если сумма является двузначным числом,то найти произведение этих чисел,в противном случаи найти разность этих чисел.
В ПАСКАЛЕ
Ответы
Ответ дал:
0
Var
a,b,asum,bsum,sum:integer;
Begin
Write('Введите два трёхзначных числа: ');
Readln(a,b);
if (abs(a)<100) or (abs(a)>999) or (abs(b)<100) or (abs(b)>999) then write('Несоблюдено условие ввода') else
Begin
asum:=a mod 10 + a div 10 mod 10 + a div 100;
bsum:=b mod 10 + b div 10 mod 10 + b div 100;
sum:=asum+bsum;
if (sum>9) and (sum<100) then write('Произведение этих чисел равно ',a*b) else write('Разность этих чисел равна ',a-b);
End;
End.
a,b,asum,bsum,sum:integer;
Begin
Write('Введите два трёхзначных числа: ');
Readln(a,b);
if (abs(a)<100) or (abs(a)>999) or (abs(b)<100) or (abs(b)>999) then write('Несоблюдено условие ввода') else
Begin
asum:=a mod 10 + a div 10 mod 10 + a div 100;
bsum:=b mod 10 + b div 10 mod 10 + b div 100;
sum:=asum+bsum;
if (sum>9) and (sum<100) then write('Произведение этих чисел равно ',a*b) else write('Разность этих чисел равна ',a-b);
End;
End.
vladmor:
А если числа трехзначные, но отрицательные?
Ответ дал:
0
var
x,x1,x2,s: integer;
begin
write('Введите x1:');readln(x1);
write('Введите x2:');readln(x2);
//ищем сумму цифр этих чисел
x:=x1 div 100; s:=s+x;
x:=x2 div 100; s:=s+x;
x:=x1 div 10 mod 10; s:=s+x;
x:=x2 div 10 mod 10; s:=s+x;
x:=x1 mod 10; s:=s+x;
x:=x2 mod 10; s:=s+x;
s:=abs(s);
//Теперь в s сумма цифр введенных x1 и x2
writeln('Сумма цифр ',x1,' и ', x2,' = ',s);
if (s>9) and (s<100) then writeln('Произведение чисел =',x1*x2)
else writeln('Разность чисел = ',x1-x2);
end.
Тест №1
Введите x1:-999
Введите x2:-888
Сумма цифр -999 и -888 = 51
Произведение чисел =887112
Тест №2
Введите x1:111
Введите x2:222
Сумма цифр 111 и 222 = 9
Разность чисел = -111
x,x1,x2,s: integer;
begin
write('Введите x1:');readln(x1);
write('Введите x2:');readln(x2);
//ищем сумму цифр этих чисел
x:=x1 div 100; s:=s+x;
x:=x2 div 100; s:=s+x;
x:=x1 div 10 mod 10; s:=s+x;
x:=x2 div 10 mod 10; s:=s+x;
x:=x1 mod 10; s:=s+x;
x:=x2 mod 10; s:=s+x;
s:=abs(s);
//Теперь в s сумма цифр введенных x1 и x2
writeln('Сумма цифр ',x1,' и ', x2,' = ',s);
if (s>9) and (s<100) then writeln('Произведение чисел =',x1*x2)
else writeln('Разность чисел = ',x1-x2);
end.
Тест №1
Введите x1:-999
Введите x2:-888
Сумма цифр -999 и -888 = 51
Произведение чисел =887112
Тест №2
Введите x1:111
Введите x2:222
Сумма цифр 111 и 222 = 9
Разность чисел = -111
Вас заинтересует
5 месяцев назад
5 месяцев назад
1 год назад
1 год назад
5 лет назад
5 лет назад
7 лет назад
7 лет назад