Помогите найти ошибку, пожалуйста ЗАДАЧА: Даны два БоЛьШуЩиХ ЧиСЛа. Проверьте, делится ли...

0 голосов
66 просмотров

Помогите найти ошибку, пожалуйста


ЗАДАЧА:
Даны два БоЛьШуЩиХ ЧиСЛа. Проверьте, делится ли их произведение на девять.



Формат файла входных данных:
В двух строках входного файла даны два целых неотрицательных числа, по одному в строке. Запись каждого из них состоит из не более чем 106 цифр.

Формат файла выходных данных:
В единственной строке выходного файла выведите "YES", если произведение данных чисел делится на девять, и "NO" в противном случае (без кавычек).


МОЕ РЕШЕНИЕ:
var
n, m: string;
c, i, k, code, sum, sum1, k1, code1: longint;

begin
sum := 0;
readln(n);
for i := 1 to length(n) do
begin
sum := sum + ord(n[i]) - ord('0');
end;
sum1 := 0;
readln(m);
for i := 1 to length(m) do
begin
sum1 := sum1 + ord(m[i]) - ord('0');
end;
if (sum mod 9 = 0) or (sum1 mod 9 = 0) or ((sum mod 3 = 0) and (sum1 mod 3 = 0)) then write('YES') else write('NO');
end.


Информатика (14 баллов) | 66 просмотров
Дан 1 ответ
0 голосов

Чо так парится.
var n, m:string;
begin
read(n,m)
if(n mod 3 =0)and(m mod 3=0)
then write('yes')
else
if(n mod 9=0) then write('yes')
else
if(m mod 9=0) then write('yes')
else('no')
end.

(267 баллов)
0

прочитай еще раз условие

0

тут у каждого числа 10 в 6 цифр

0

максимум

0

а не само число 10 в 6

0

тогда надо брать побольше переменных и вводить число кусками а дальше работать с ним

0

с ними*

0

типа старшие и младшие разряды

0

тогда можно будет вводить хоть какие числа

0
0

сходи сюда может что найдёшь