Другие языки программирования и технологии

Даны 3 целых числа. Возвести в квадрат отрицательные числа и в третью степень - положительные (число 0 не изменять)

Фаррух
Фаррух
459
Вариант 1: (исп если чисел мало)
uses crt;
var a,b,c:integer;
begin
ClrScr;
Writeln('Введите 3 челых числа');
Readln(a,b,c);
if a>0 then a:=a*a*a;
if a<0 then a:=a*a;
if b<0 then b:=b*b;
if b>0 then b:=b*b*b;
if c>0 then c:=c*c*c;
if c<0 then c:=c*c;
Writeln(a,' ',b,' ',c);
Readln;
end.

Вариант 2: (исп если чисел много)
uses crt;
var a:array[1..3]of integer;
i:integer;
begin
ClrScr;
Writeln('Введите 3 челых числа');
Writeln;
For i:=1 to 3 do begin
readln(a);
if a>0 then a:=a*a*a;
if a<0 then a:=a*a;
Writeln(a);
Writeln;
end;
Readln;
end.



P.S. Так же они отличаются выводом: в 1 случае сначала все 3 вводятся потом все 3 выводится; во 2 варианте число вводится обрабатывается выводится- при желании можно спокойно поменять
Так же программы проверены. Если нужно что-то объяснить или решить по-другому обращайся.
НЛ
Николай Луговских
2 261
Лучший ответ
отрицательные - if x < 0
положительные if x > 0
возведение в квадрат x:= x*x
в куб x := x*x*x
int main()

{

setlocale(LC_ALL, "Russian");

int a,b,e;


cout << "Введите число: ";

cin >> a;

cout << "Введите число: ";

cin >> b;

cout << "Введите число: ";

cin >> e;


if (a > 0 || b > 0 || e > 0)

{

a *= a;

b *= b;

e *= e;

}

if (a < 0 || b < 0 || e < 0)

{

a = 0;

b = 0;

e = 0;

}

cout << a << endl << b << endl << e << endl;

}

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