92

Задача, состав те программу в паскале!

mikluxo 27 августа 2022

Задача, состав те программу в паскале! 1) Дано трехзначное число. Определить количество всех различных трехзначных чисел, которые можно составить из цифрэтого числа. 2) Даны три числа. Подсчитать количество четных чисел. Заранее спасибо!

категория: информатика

61

Пожалуйста, я сегодня добрый Первая задача. var s, mn: set of integer; f: boolean; k, n, c, i, j, kol: integer; begin writeln ('Введите трехзначное число: '); repeat readln (n) until n in [100… 999]; // защита от «дурака» k: =n; // записываем число, чтобы вывести на результат while n <> 0 do begin // пока число не станет равно нулю… c: =n mod 10; // последняя цифра числа include (s, c); // вносим эту цифру в множество n: =n div 10 // у числа отсекаем рассмотренную цифру end; for i: =100 to 999 do begin // рассматриваем все трехзначные числа mn: =s; j: =i; f: =true; // все обнуляем while j <> 0 do begin // пока рассматриваемое число не будет равно нулю c: =j mod 10; // последняя цифра числа if c in mn then exclude (mn, c) else f: =false; // если число во множестве, то убираем его оттуда, чтобы избежать повторений, иначе — не рассматриваем его. j: =j div 10; // у числа отсекаем рассмотренную цифру end; if f then begin inc (kol); write (i: 6) end // если проверка прошла успешно, то выводим число на экран и прибавляем значение переменной-счетчика! end; writeln; writeln ('Из ', k, ' можно составить ', kol, ' чисел! '); // выводим результат readln; end.=А вот вторая, комменты к ней писать было уже лень: var k, i, n, kol: integer; begin writeln ('Количество трехзначных чисел, которые вы далее введете? '); repeat readln (k) until k in [1… 10]; for i: =1 to k do begin writeln ('Введите ', i, ' трехзначное число: '); repeat readln (n) until n in [100… 999]; while n <> 0 do begin if (n mod 10) mod 2=0) then inc (kol); n: =n div 10; end; end; writeln ('Количество четных чисел=',kol); readln end.

пользователи выбрали этот ответ лучшим
Знаете другой ответ?

Есть интересный вопрос? Задайте его нашему сообществу, у нас наверняка найдется ответ!
Делитесь опытом и знаниями, зарабатывайте награды и репутацию, заводите новых интересных друзей!
Задавайте интересные вопросы, давайте качественные ответы и зарабатывайте деньги. Подробнее...