Напишите, пожалуйста, программы (паскаль).
1. Ввести два целых числа, если первое число больше второго, то посчитать сумму этих чисел, иначе прибавить ко второму числу 10.
2. Напишите программу, которая по координатам (номеру столбца и номеру строки) двух клеток шахматной доски определяет, одного они цвета или разного
Ответы
Ответ дал:
0
1.
var a,b:integer;
begin
readln(a,b);
if a>b then a:=a+b
else b:=b+10;
print ('a =',a,'b =',b);
end.
2.
var
a,a1,b,b1,x,y:integer;
begin
readln(a,a1,b,b1);
x:=0;
y:=0;
if ((a mod 2=0)and(a1 mod 2=0) or (a mod 2=1) and (a1 mod 2=1)) then
x:=1
else
x:=0;
if ((b mod 2=1)and(b1 mod 2=0) or (b mod 2=0) and (b1 mod 2=1)) then
y:=1
else y:=0;
if x<>y then write('Да') else write ('Нет');
end.
var a,b:integer;
begin
readln(a,b);
if a>b then a:=a+b
else b:=b+10;
print ('a =',a,'b =',b);
end.
2.
var
a,a1,b,b1,x,y:integer;
begin
readln(a,a1,b,b1);
x:=0;
y:=0;
if ((a mod 2=0)and(a1 mod 2=0) or (a mod 2=1) and (a1 mod 2=1)) then
x:=1
else
x:=0;
if ((b mod 2=1)and(b1 mod 2=0) or (b mod 2=0) and (b1 mod 2=1)) then
y:=1
else y:=0;
if x<>y then write('Да') else write ('Нет');
end.
Ответ дал:
0
Да... вторую задачу Вы намудрили... достаточно единственной проверки if ((a+a1) mod 2)=((b+b1) mod 2) then ... else ...
Ответ дал:
0
Т.е. вся Ваша вторая программа - это всего лишь
var
a,a1,b,b1:integer;
begin
Read(a,a1,b,b1);
if ((a+a1) mod 2)=((b+b1) mod 2) then Write('Да')
else Write ('Нет')
end.
var
a,a1,b,b1:integer;
begin
Read(a,a1,b,b1);
if ((a+a1) mod 2)=((b+b1) mod 2) then Write('Да')
else Write ('Нет')
end.
Ответ дал:
0
да,да знаю. Я уже потом понял, что можно и так сделать.
Вас заинтересует
2 года назад
7 лет назад
7 лет назад
9 лет назад
10 лет назад