Предмет: Информатика,
автор: echelon6477
Напишите, пожалуйста, программы (паскаль).
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
да,да знаю. Я уже потом понял, что можно и так сделать.
Похожие вопросы
Предмет: Физкультура и спорт,
автор: MaxImozg1
Предмет: Литература,
автор: Аноним
Предмет: Математика,
автор: sandugash2016
Предмет: Физика,
автор: вика022
Предмет: Алгебра,
автор: igrocc