Нужно составить прогу, определяющую оканчивается ли число на 3. Я заметил, что все числа оканчивающиеся на 3 делятся на 5 с остатком 6.
program error;
var
a:integer;
begin
readln(a);
if (a mod 5= 6) then
writeln('Число оканчивается на 3')
else
begin
if (a mod 2=0) then
writeln('Число чётное');
end;
end.
Знаю, что много воды, но это не важно. Мой план не работает. Шо делать?
Другие языки программирования и технологии
Помогите решить задачу в Pascal.
Традиционно, чтобы выявить последнюю цифру числа пишут if a mod 10=последней цифре then ...
„Я заметил, что все числа оканчивающиеся на 3 делятся на 5 с остатком 6.“
Это как?
Остаток 6 не может получиться при делении на 5 по своему определению!
К примеру:
0 : 5 = 0 остаток 0.
1 : 5 = 0 остаток 1.
2 : 5 = 0 остаток 2.
3 : 5 = 0 остаток 3.
4 : 5 = 0 остаток 4.
5 : 5 = 1 остаток 0.
и т. д. циклично с длиной периода в 5 будем получать остатки от 0 до 4.
Ладно. Будем делить числа, оканчивающиеся на 3:
3 : 5 = 0 остаток 3.
13 : 5 = 2 остаток 3.
23 : 5 = 4 остаток 3.
33 : 5 = 6 остаток 3.
и т. д.
Это хорошо. Но плохо то, что числа оканчивающиеся на 8 при делении на 5 тоже дают в остатке 3:
8 : 5 = 1 остаток 3.
18 : 5 = 3 остаток 3.
28 : 5 = 5 остаток 3.
и т. д.
К тому же, зачем делить на 5, если сразу можно разделить на 10 и не париться?
P.S. Для проверки нечётности числа есть встроенная функция odd… Хотя, вам этого не нужно находить!
P.P.S. И после этого на этом форуме появляются ещё вопросы типа „нужна ли математика программисту“?
Да некоторые даже с арифметикой не могут справиться!
Это как?
Остаток 6 не может получиться при делении на 5 по своему определению!
К примеру:
0 : 5 = 0 остаток 0.
1 : 5 = 0 остаток 1.
2 : 5 = 0 остаток 2.
3 : 5 = 0 остаток 3.
4 : 5 = 0 остаток 4.
5 : 5 = 1 остаток 0.
и т. д. циклично с длиной периода в 5 будем получать остатки от 0 до 4.
Ладно. Будем делить числа, оканчивающиеся на 3:
3 : 5 = 0 остаток 3.
13 : 5 = 2 остаток 3.
23 : 5 = 4 остаток 3.
33 : 5 = 6 остаток 3.
и т. д.
Это хорошо. Но плохо то, что числа оканчивающиеся на 8 при делении на 5 тоже дают в остатке 3:
8 : 5 = 1 остаток 3.
18 : 5 = 3 остаток 3.
28 : 5 = 5 остаток 3.
и т. д.
К тому же, зачем делить на 5, если сразу можно разделить на 10 и не париться?
P.S. Для проверки нечётности числа есть встроенная функция odd… Хотя, вам этого не нужно находить!
P.P.S. И после этого на этом форуме появляются ещё вопросы типа „нужна ли математика программисту“?
Да некоторые даже с арифметикой не могут справиться!
Кирилл Парфирьев
"К тому же, зачем делить на 5, если сразу можно разделить на 10 и не париться?" -этого было бы достаточно.
Похожие вопросы
- Помогите решить задачу в Pascal!
- Помогите решить задачи на Pascal...
- Помогите решить задачу на Pascal!)
- Помогите решить задачу на Pascal 2- масив
- Пожалуйста помогите решить задачу Pascal
- Помогите решить задачу через процедуры PASCAL
- Помогите решить задачи Pascal
- Помогите решить задачу Pascal
- Помогите решить задачу по Turbo Pascal пожалуста
- Помогите пожалуйста решить задачу в Pascal ABC