0 / 0 / 0 Регистрация: 13.05.2023 Сообщений: 27 |
|
1 |
|
В последовательности натуральных чисел определить количество трехзначных14.05.2023, 10:40. Показов 391. Ответов 3
Напишите программу, которая в последовательности натуральных чисел определяет количество
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
14.05.2023, 10:40 |
Ответы с готовыми решениями: Создание программы, которая в последовательности натуральных чисел определяет количество трёхзначных чисел, кратных 4 Определить количество трехзначных натуральных чисел В последовательности натуральных чисел определить количество чисел, кратных 6 и оканчивающихся на 4 В последовательности натуральных чисел определить количество чисел, кратных 3 и оканчивающихся на 2 В последовательности натуральных чисел определить количество четных чисел 3 |
Vadik_lom 0 / 0 / 0 Регистрация: 14.05.2023 Сообщений: 1 |
||||
14.05.2023, 19:39 |
3 |
|||
Решение:
Добавлено через 6 минут
0 |
TimutGin 324 / 129 / 58 Регистрация: 16.02.2021 Сообщений: 293 |
||||
14.05.2023, 21:22 |
4 |
|||
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
14.05.2023, 21:22 |
Помогаю со студенческими работами здесь В последовательности натуральных чисел определяет количество трёхзначных чисел, кратных 4 Определить количество трёхзначных натуральных чисел, сумма цифр которых равна заданному числу N и вывести их на экран В последовательности натуральных чисел определить количество нечётных чисел, кратных 3 Подсчитать количество трехзначных натуральных чисел, сумма цифр которых равна n Определить количество натуральных трехзначных чисел Определить количество трехзначных натуральных чисел? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 4 |
Формулировка задачи:
Вводится последовательность чисел. Конец ввода – 0 . Определить количество трехзначных чисел. Сделать блок-схему и программу написать
Код к задаче: «Определить количество трехзначных чисел»
textual
uses crt; var i,k: integer; begin repeat readln(i); if (abs(i)>99) and (abs(i)<=999) then inc(k); until i=0; writeln('ÒðåõçГ*Г*Г·Г*ûõ Г·ГЁГ±ГҐГ«: ',k); readln; end.
Полезно ли:
14 голосов , оценка 4.071 из 5
var k,i,a,b,c1,c2,c3:integer; begin writeln('Vvedite a'); readln(a); writeln('Vvedite b'); readln(b); k:=0; for i:=100 to 999 do begin c1:=i div 100; c2:=i div 10 mod 10; c3:=i mod 10; if (c1+c2+c3=A)and(c3=B) then k:=k+1; end; write('K=',k); end.
Результат работы программы
Похожие записи/страницы:
- Найти кол-во трехзначных чисел, сумма цифр которых равна A , а само число заканчивается цифрой b. (a и b вводятся с…
- Определить количество трехзначных натуральных чисел, сумма цифр которых равна целому числу n – Pascal(Паскаль)-CF
- Найти все 3-х значные числа, такие, что сумма цифр равна А, а само число делится на В (А и В вводится с клавиатуры) -…
- Дано натуральное число. Найти сумму цифр этого числа. Верно ли что число начинается и заканчивается одной и той же…
- Из чисел от 10 до 99 вывести те, сумма цифр которых равна S(0 < S < 18)- Pascal(Паскаль)
- 1)дано натуральное число, удалить все цифры А (А вводится с клавиатуры)2)найти все числа от 1 до 200,у которых…
- Найти все трехзначные числа, такие что сумма цифр равна М а само число делится на В – Pascal(Паскаль)
- Найти все трехзначные числа, сумма цифр которых равна заданному числу В – Pascal(Паскаль)
Условие задачи: Определить count — количество трехзначных натуральных чисел, сумма которых равна S. Число S задается с клавиатуры (Язык Pascal)
Сложность: средняя.
Как мы будем решать задачу?
Нам надо найти кол-во трехзначных натуральных чисел, сумма которых равна S.
Максимальное 3-хзначное число это 999, его сумма равна 27 (9+9+9)
Пример : Мы ввели число 27 и нам программа должна выдать количество чисел сумма которых равна 27, такое число одно 999.
Т.е. нам надо проверить все числа от 100 до 999, и в каждом из этих чисел найти сумму цифр и сравнить с числом которое мы ввели.
Как найти сумму цифр числа вы можете посмотреть здесь , всё подробно рассказано.
Давайте решать :
Первое что нам знать это какие переменные нам нужны :
Из условия мы можем взять три переменные:
Но вы всё увидите походу.
Объявим переменные :
uses
crt;
var
count , summa , s , i , j , num :
integer
;
begin
write
(
'Введите число <= 27 : '
); readln(s);
{просим пользователя ввести число}
end
.
Для начала сделаем цикл который будет искать сумму цифр в числе :
while
j >
0
do
begin
{Делим число на 10 и получаем остаток от деления т.е. крайнюю правую цифру числа}
sum := sum + (j
mod
10
);
{Делим число на 10 и получаем целую часть числа т.е. отбрасываем крайнюю правую цифру от числа}
j := (j
div
10
);
end
;
Теперь если мы этот цикл засунем в цикл for , то у нас уже будет почти готовое решение задачи :
for
i:=
100
to
999
do
begin
j := i ;
sum :=
0
;
while
j >
0
do
begin
sum := sum + (j
mod
10
);
j := (j
div
10
);
end
;
end
;
Заметьте что переменной j мы присваиваем значение i , если бы мы это не сделали , т.е. у нас бы не было переменное j, цикл бы у нас не когда не закончился и вообще бы не чего не выводил.
И каждый раз мы обнуляем сумму, т.к. каждый раз у нас новое число.
Теперь осталось добавить условие
if
(sum = s)
then
begin
count := count +
1
;
writeln
(i);
end
;
Т.е. тут если у нас сумма цифр равна числу которое мы ввели то количество этих чисел увеличиваем и выводим это число .
Вот и всё задача готова :
uses
crt;
var
count , summa , s , i , j , num :
integer
;
begin
write
(
'Введите число <= 27 : '
); readln(s);
{просим пользователя ввести число}
for
i:=
100
to
999
do
begin
j := i ;
sum :=
0
;
while
j >
0
do
begin
sum := sum + (j
mod
10
);
j := (j
div
10
);
end
;
if
(sum = s)
then
begin
count := count +
1
;
writeln
(i);
end
;
end
;
writeln
(
'Количество таких чисел : '
, count);
readln;
end
.
Предыдущая
ПрограммированиеЗадачи по Pascal. Максимальное число из трех
Следующая
ПрограммированиеЗадачи по Pascal. Степень числа 3.
Пожалуйста, я сегодня добрый 🙂 Первая задача.
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.