п-а,которая делает проверку, делится ли числo А на число B
Автор: Zxzc 31.05.2006 3:10
Любое A делится на любое B не равное 0! Наверное, без остатка?
If a div b = a/b then write('delits') else write('NOT');
Автор: volvo 31.05.2006 3:13
Все-таки остаток лучше mod-ом вычислять... Для чего-то же он есть в Паскале...
Автор: Гость 31.05.2006 3:32
а возможно ли решение этой программы через массив или функцию, или рекурсию?
Автор: Zxzc 31.05.2006 3:36
Цитата
а возможно ли решение этой программы через массив или функцию, или рекурсию?
(Нет смайлика с отпадающей челюстью ) Я даже не знаю что и ответить.... Задача в 3 строки
var a,b:integer begin readln(a,b); If a mod b <>0 then write('delits') else write('NOT'); end.
Автор: Гость 31.05.2006 3:41
я понимаю,но я пишу курсовик,а там такая пр-га,я и подумал,что мало ли.... я уже с ума схожу
Автор: Zxzc 31.05.2006 3:48
Цитата
я уже с ума схожу
А я уж было подумал что со мной что-то...
Автор: volvo 31.05.2006 3:58
Ну, в принципе, можно через функцию сделать (вычислить НОД(A, B), и если он = 1, то число A не делится на B нацело):
function GCD (A: integer; B: integer): integer; begin while (a <> 0) and (b <> 0) do if a >= b then a := a mod b else b := b mod a; GCD := a + b; end;
Var A, B: integer; begin ReadLn(A, B); If GCD(A, B) <> 1 Then Write('Yes') Else Write('No'); end.
При желании можно и рекурсивно GCD вычислить...
Автор: Dmitry 31.05.2006 4:11
Цитата
а возможно ли решение этой программы через массив или функцию, или рекурсию?
Можно. У нас в начале этого года такая лаба была. Массивом (или сторокой но ею дольше) можно вычислять, если числа очень большие и не влезают ни в один тип данных (десятки разрядов).
Автор: klem4 31.05.2006 14:01
Цитата
Я даже не знаю что и ответить.... Задача в 3 строки
var a,b:integer begin readln(a,b); If a mod b <>0 then write('delits') else write('NOT'); end.
Всеже наверное
Код
If a mod b = 0 then write('delits')
? mod - остаток от деления а на б, если он НЕ равен нулю значит деления нацело не было.
Автор: Zxzc 31.05.2006 14:12
Цитата
Всеже наверное
Код
If a mod b = 0 then write('delits')
? mod - остаток от деления а на б, если он НЕ равен нулю значит деления нацело не было.