Просмотров 2.3к. Обновлено 15 октября 2021
В диапазоне натуральных чисел от 2 до 99 определить, сколько из них кратны любому из чисел в диапазоне от 2 до 9.
Необходимо проверить кратность каждого числа сначала числу 2, потом 3 и т.д. до 9 включительно. Введем массив с восьмью ячейками. В первую будем записывать количество чисел кратных 2, во вторую — 3 и т.д.
- Записать в ячейки массива нули.
- Перебирая числа от 2 до 99,
- для каждого из них в цикле от 2 до 9
- проверять кратность числа внешнего цикла числу внутреннего.
- Если второе число делит нацело первое, значит увеличивать на 1 значение в соответствующей ячейке массива.
- для каждого из них в цикле от 2 до 9
- Вывести индексы и соответствующие им значения из массива.
Pascal
найти количество кратных чисел паскаль
var
a: array[2..9] of byte;
i,j: byte;
begin
for i:=2 to 9 do a[i] := 0;
for i:=2 to 99 do
for j:=2 to 9 do
if i mod j = 0 then
a[j] := a[j] + 1;
for i:=2 to 9 do
writeln(i,' - ', a[i]);
end
2 - 49
3 - 33
4 - 24
5 - 19
6 - 16
7 - 14
8 - 12
9 - 11
Язык Си
#include
main() {
int a[8], i, j;
for (i=0; i<9; i++) a[i] = 0;
for (i=2; i<100; i++)
for (j=2; j<10; j++)
if (i%j == 0) a[j-2] += 1;
for (i=0; i<8; i++)
printf("%d - %dn", i+2, a[i]);
}
Python
найти количество кратных чисел Python
a = [0]*8
for i in range(2,100):
for j in range(2,10):
if i%j == 0:
a[j-2] += 1
i = 0
while i < len(a):
print(i+2, ' - ', a[i])
i += 1
2 - 49
3 - 33
4 - 24
5 - 19
6 - 16
7 - 14
8 - 12
9 - 11
КуМир
алг кратность
нач
цел таб a[2:9]
цел j,i
нц для i от 2 до 9
a[i] := 0
кц
нц для j от 2 до 99
нц для i от 2 до 9
если mod(j,i) = 0 то a[i]:=a[i]+1 все
кц
кц
нц для i от 2 до 9
вывод i, " - ", a[i], нс
кц
кон
Basic-256
dim a(8)
for i=2 to 99
for j=2 to 9
if i%j = 0 then
a[j-2] = a[j-2] + 1
endif
next j
next ifor i=0 to 7
print (i+2) + " - " + a[i]
next i
Horazoon 0 / 0 / 1 Регистрация: 08.02.2011 Сообщений: 13 |
||||
1 |
||||
Программа, определяющая количество чисел, кратных данному14.12.2011, 01:11. Показов 4200. Ответов 10 Метки нет (Все метки)
Прошу помочь новичку найти ошибку, т.к. после ввода числа ничего не происходит.
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
14.12.2011, 01:11 |
Ответы с готовыми решениями: Определить в последовательности количество чисел кратных трем, и количество чисел, кратных семи
10 |
amor1k Студент 148 / 148 / 64 Регистрация: 18.01.2011 Сообщений: 469 |
||||||||||||||||||||
14.12.2011, 01:14 |
2 |
|||||||||||||||||||
проверьте второй параметр(условие). я так понял, Вы хотели написать
Добавлено через 52 секунды
и здесь нужно писать либо
либо
1 |
0 / 0 / 1 Регистрация: 08.02.2011 Сообщений: 13 |
|
14.12.2011, 01:15 [ТС] |
3 |
Большое спасибо за помощь
0 |
ПавелКалашников 16 / 16 / 9 Регистрация: 07.10.2011 Сообщений: 77 Записей в блоге: 1 |
||||
14.12.2011, 01:17 |
4 |
|||
думаю, что
будет логичнее и больше по сишному =)
1 |
amor1k Студент 148 / 148 / 64 Регистрация: 18.01.2011 Сообщений: 469 |
||||
14.12.2011, 01:19 |
5 |
|||
1 |
ПавелКалашников 16 / 16 / 9 Регистрация: 07.10.2011 Сообщений: 77 Записей в блоге: 1 |
||||
14.12.2011, 01:20 |
6 |
|||
и наверное всё-таки
1 |
2347 / 1720 / 148 Регистрация: 06.03.2009 Сообщений: 3,675 |
|
14.12.2011, 01:20 |
7 |
будет логичнее и больше по сишному =) Будет плохо, на первой же итерации умрем при попытке деления на ноль в строке 14.
1 |
0 / 0 / 1 Регистрация: 08.02.2011 Сообщений: 13 |
|
14.12.2011, 01:20 [ТС] |
8 |
Большое спасибо за помощь и за отзывчивость. Хочу задать вопрос немного не по теме: Считается ли неправильным действием подключение библиотек, ненужных для построения данной программы?
0 |
Студент 148 / 148 / 64 Регистрация: 18.01.2011 Сообщений: 469 |
|
14.12.2011, 01:22 |
9 |
числа 1, 2, 5, 10 Изображения
1 |
16 / 16 / 9 Регистрация: 07.10.2011 Сообщений: 77 Записей в блоге: 1 |
|
14.12.2011, 01:28 |
10 |
Большое спасибо за помощь и за отзывчивость. Хочу задать вопрос немного не по теме: Считается ли неправильным действием подключение библиотек, ненужных для построения данной программы? Представь, если ты заставил свой шкаф кучей книг, которые тебе не нужны. При том ты все эти книги зачем-то купил. Ты можешь сказать: «Когда-нибудь пригодится», но когда пригодится, тогда и купишь
1 |
2347 / 1720 / 148 Регистрация: 06.03.2009 Сообщений: 3,675 |
|
14.12.2011, 01:37 |
11 |
Хочу задать вопрос немного не по теме: Считается ли неправильным действием подключение библиотек, ненужных для построения данной программы? Да, во-первых, это может ввести в заблуждение читающего код, а во-вторых увеличивает размер кода.
0 |
Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 4.Введённые числа не превышают 30 000. Программа должна вывести одно число — количество чисел, кратных 4.
Вот мой код
import java.util.Scanner;
public class Main{
public static void main(String [] args){
Scanner scanner = new Scanner(System.in);
int c = scanner.nextInt();
while(c<30000) {
if((c%4==0) && (c!=0)){
}
}
System.out.println(c);
}
}
Nick Volynkin♦
33.5k24 золотых знака128 серебряных знаков217 бронзовых знаков
задан 5 янв 2019 в 9:14
3
Код в вопросе не соответстует решению задачи, он в бесконечном цикле будет выводить первое введённое число.
Это условие будет удалено при компиляции, так как в нём нет смысла.
if((c%4==0) && (c!=0)){
}
В задаче сказано, что сначала вводится количество чисел, которые будут введены, которые нужно проверить на кратность.
Число 30 000
нужно для определения типа чисел. В данном случае можно использовать short
, так как максимальное его значение = 32 767
.
Ниже код решения вашей задачи.
import java.util.Scanner;
public class Main {
public static void main(String [] args){
Scanner scanner = new Scanner(System.in);
int count = scanner.nextInt();
int result = 0;
for (int i = 0; i < count; i++){
int number = scanner.nextShort();
if((number % 4 == 0) && (number != 0)){
result++;
}
}
System.out.println(result);
}
}
ответ дан 7 янв 2019 в 10:42
Mihail RisMihail Ris
8447 серебряных знаков22 бронзовых знака
1
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int count = scanner.nextInt();
int[] numbers = new int[count];
for (int i = 0; i < count; i++) {
numbers[i] = scanner.nextInt();
}
int multiplesOf4 = 0;
for (int i = 0; i < count; i++) {
if (numbers[i] % 4 == 0) {
multiplesOf4++;
}
}
System.out.println(multiplesOf4);
}
}
ответ дан 19 мар в 17:01
dDoSdDoS
161 бронзовый знак
1
Описание задачи
Данная программа должна вывести все числа в заданном диапазоне, которые делились бы без остатка на определенное число.
Решение задачи
- На вход принимаются два числа, которые задают диапазон и записываются в разные переменные.
- Также принимается число, которое будет делителем.
- Используем цикл
for
, чтобы пройтись по всему диапазону и проверить все числа на кратность. Выводим только те числа, которые делятся на заданное число без остатка. - Конец.
Исходный код
Ниже дан исходный код для вывода всех чисел из заданного диапазона, которые удовлетворяют условию делимости на данное число. Результаты работы программы также даны ниже.
lower = int(input("Введите нижнюю границу диапазона:")) upper = int(input("Введите верхнюю границу диапазона:")) n = int(input("Введите делитель:")) for i in range(lower, upper + 1): if(i % n == 0): print(i)
Объяснение работы программы
- Пользователь вводит два числа, нижнюю и верхнюю границы. Они записываются в отдельные переменные.
- Далее пользователь вводит число, которое будет делителем. Оно также сохраняется в своей переменной.
- Значение переменной цикла
for
варьируется от нижней до верхней границы с шагом 1. - В процессе работы цикла проверяется, равен ли остаток от деления нулю. Если остаток равен нулю, делимое выводится на экран.
- Конец.
Результаты работы программы
Пример 1: Введите нижнюю границу диапазона:1 Введите верхнюю границу диапазона:50 Введите делитель:5 5 10 15 20 25 30 35 40 45 50 Пример 2: Введите нижнюю границу диапазона:50 Введите верхнюю границу диапазона:100 Введите делитель:7 56 63 70 77 84 91 98
Формулировка задачи:
Написать программу, позволяющую найти количество чисел, кратных 5 и окончивающихся на 0. На вход программа получает количество чисел, а потом сами числа.
Код к задаче: «Найти количество чисел, кратных 5 и оканчивающихся на 0»
textual
var n, i, k, m: integer; begin k := 0; readln(n); for i := 1 to n do begin readln(m); if (m mod 5 = 0) and (m mod 10 = 0) then inc(k) end; writeln(k); end.
Полезно ли:
11 голосов , оценка 4.273 из 5