Я хочу написать программу pascal, которая проверяет, делится ли определенное число на 2, 3, 5, 7, 9 и 11 и будет ли сумма цифр четной или нечетной. В самом конце я хочу написать оператор типа «Это число делится на 5 и 9», а сумма чисел четная/нечетная. Что мне делать?Делимость чисел в pascal
1
A
ответ
0
Это Мой код, я разделить на 2 части:
program checkNumber;
var number : integer;
divider : string;
digit1, digit2, sum : integer;
begin
//First//
write('Number : '); readln(number);
if (number MOD 2 = 0) then divider := divider+'2, ';
if (number MOD 3 = 0) then divider := divider+'3, ';
if (number MOD 5 = 0) then divider := divider+'5, ';
if (number MOD 7 = 0) then divider := divider+'7, ';
if (number MOD 9 = 0) then divider := divider+'9, ';
if (number MOD 11 = 0) then divider := divider+'11, ';
write('This number is divisible by '); write(divider);
////////////////////////////////////////////////////////
//Second//
digit1 := number DIV 10;
digit2 := number MOD 10;
sum := digit1 + digit2;
write('and the sum of the numbers is ');
if (sum MOD 2 = 0) then write('even') else write('odd');
////////////////////////////////////////////////////////
end.
Первая часть
Вам нужны MOD (модуль) операции, чтобы получить список значений делителя:
write('Number : '); readln(number);
if (number MOD 2 = 0) then divider := divider+'2, ';
if (number MOD 3 = 0) then divider := divider+'3, '; //divider 2 3 5 7 9 11
.
.
Затем сохранить делитель в переменный делителя как строка и записать его на мониторе.
write('This number is divisible by '); write(divider);
Вторая часть
Вы должны отделить цифры в одну переменную с помощью DIV (деление) и MOD (модуль) операции. В моем коде, я ограничить ввод номера для 2 цифры (1 до 99):
digit1 := number DIV 10;
digit2 := number MOD 10;
sum := digit1 + digit2;
(Вы изменить использование кода if..then .. функцию, если вы хотите ввода большего числа).
Затем используйте MOD проверить число четным или нечетным:
if (sum MOD 2 = 0) then write('even') else write('odd');
1
Использование модуля:
program ModulusTest;
begin
if 8 mod 2 = 0 then
begin
write(8);
writeln(' is even');
end;
if 30 mod 5 = 0 then
begin
write(30);
writeln(' is divisible by 5');
end;
if 32 mod 5 <> 0 then
begin
write(32);
writeln(' is not divisible by 5');
end;
end.
Modulus является то, что остается после того, как целочисленного деления :)
Смежные вопросы
- 1. делимость частичной суммы и разности целых чисел
- 2. Чтение целых чисел в Pascal
- 3. Разделение чисел в строке. Pascal
- 4. Лисп делимость
- 5. Делимость вопрос
- 6. Правильное выравнивание чисел в PASCAL TRAINGLE
- 7. Количество простых чисел из массива в Pascal
- 8. Python - делимость и количество
- 9. Python: простой тест делимость
- 10. делимость на 13 петля
- 11. Как вы правильно проверяете делимость в python
- 12. бинарной делимость 3
- 13. Pascal, чтение неизвестного числа целых чисел
- 14. Программа цикла суммирования в Pascal
- 15. Pascal: сумма цифр в диапазоне
- 16. Как написать эффективный тест на делимость?
- 17. Auto Layout Максимальная ширина при сохранении делимость
- 18. OctToInt in Pascal
- 19. Как проверить делимость числа не в базе 10 без преобразования?
- 20. Добавление элементов в массив - Pascal
- 21. Pascal упражнение не определено
- 22. Pascal - размер массива
- 23. Pascal decimal-point
- 24. Тип Проверка в Pascal
- 25. Объявление номера в Pascal
- 26. набор записей в pascal
- 27. Треугольник Pascal в Haskell
- 28. Абстрактная функция в Pascal
- 29. Транспортировать строку в Pascal
- 30. Управление клавиатурой в Pascal
Нет, честно, я даже не знаю, как начать. – charlie
Число даже делится с другим числом, если остаток равен нулю. Используйте оператор mod, чтобы проверить это. Используйте функцию Odd для проверки того, является ли число нечетным. Чтобы сделать сумму цифр, которая делает число, добавьте модуль 10 числа к сумме и разделите число на 10 в цикле, пока число не станет равно нулю. –
Вы можете использовать ** mod ** для проверки конкретного номера –