Домашние задания: Информатика
Помогите пожалуйста решить
количество чисел в диапазоне от 1000 до 10000 которые делятся на 5 и не делится на 7
Числа, соответствующие условию задачи, - это каждое пятое число (1000, 1005, ...), которое не делится на 7 (т.е. 6 из 7). Это - примерно 1800 - [1800 / 7] = 1543. Но нужно аккуратно учесть границы, поэтому попробуем посчитать более точно.
Каждая пятёрка добавляет 5 или вычитает 2 к/из остатка от деления на 7.
Сколько пятёрок надо добавить к начальному числу (s = 1000), чтобы найти первое число (x), которое делится на 7?
Это одно из трёх:
Итак, получился алгоритм, которым можно найти ответ за константное время, причём, для любых границ, а не только [1000; 10000]. Осталось облечь его в синтаксис программы, например, на Питоне:
Запускаем, получаем ответ:
----------------------
P.S. При всей моей антипатии к нейросетям, должен заметить, что из шести отвечающих правильное направление мысли предложила только нейросеть. Конечно, она запорола ответ, но все ответившие люди сделали то же самое на ещё более ранней стадии. Слышите, выпускники видеокурсов, вошедшие в ИТ? Если даже ChatGPT знает, что задачу надо решать эффективно, а не тупым перебором 9 тысяч чисел, то специализированная нейросеть, обучаемая не по гуглу, а по профессиональной подборке алгоритмов, вышибет вас с рынка в считанные месяцы. 5% из вас, возможно, возьмут на роль обслуги при ИИ. Советую, пока конкуренция невелика, войти в слесарное ПТУ, всё же реиндустриализация - не за горами.
Каждая пятёрка добавляет 5 или вычитает 2 к/из остатка от деления на 7.
Сколько пятёрок надо добавить к начальному числу (s = 1000), чтобы найти первое число (x), которое делится на 7?
Это одно из трёх:
r = s mod 7
x = 0 | если r = 0
x = (7 + r) / 2 | если r нечётное
x = r / 2 | если r > 0 и чётное
Всего чисел, кратных 5, в диапазоне [s; e] (e = 10000): k = [(e - s + 1) / 5]
Из них чисел, кратных 35: m = [(e - s - 5x + 1) / 5]
Всего интересующих нас чисел: k - m
Итак, получился алгоритм, которым можно найти ответ за константное время, причём, для любых границ, а не только [1000; 10000]. Осталось облечь его в синтаксис программы, например, на Питоне:
s, e = 1000, 10000
k = (e - s + 1) // 5
r = s % 7
x = ((7 >> (((r & 1) ^ 1) > 1
m = (e - s - x * 5 + 1) // 35
print(k - m)
Причём, она будет находить результат для любых границ, не перебирая чисел внутри диапазона, т.е. за константное время.Запускаем, получаем ответ:
1544
И тот же результат вычисляется за минуту при помощи обычного калькулятора.----------------------
P.S. При всей моей антипатии к нейросетям, должен заметить, что из шести отвечающих правильное направление мысли предложила только нейросеть. Конечно, она запорола ответ, но все ответившие люди сделали то же самое на ещё более ранней стадии. Слышите, выпускники видеокурсов, вошедшие в ИТ? Если даже ChatGPT знает, что задачу надо решать эффективно, а не тупым перебором 9 тысяч чисел, то специализированная нейросеть, обучаемая не по гуглу, а по профессиональной подборке алгоритмов, вышибет вас с рынка в считанные месяцы. 5% из вас, возможно, возьмут на роль обслуги при ИИ. Советую, пока конкуренция невелика, войти в слесарное ПТУ, всё же реиндустриализация - не за горами.
PascalABC подтверждает :))))

Эльвира Сафина
Утверждаю ;)
1544 числа. Если просто решить. А если программу составить, то, смотря, на каком языке программирования (их около 40 существует). Нет, программе-то без разницы, на каком языке программирования она написана, а вот учитель/преподаватель может спросить, с чего это вдруг программа написана на этом языке программирования, а не на том, который он(а) преподает. Вот, например, на Паскале:
Program P1;
uses crt;
var i, n: integer;
begin
clrscr;
n:=0;
for i:=1000 to 10000 do if (i mod 5=0) and (i mod 70) then n:=n+1;
writeln ('Количество чисел, делящихся на 5 и не делящихся на 7, в диапазоне от 1000 до 10000 составляет: ', n);
write ('Программа завершена. Для выхода нажмите клавишу Enter.');
readkey;
end.

Вот решение

Неизвестно Неизвестно
1800-257 = 543?????
Для решения данной задачи нужно посчитать количество чисел, которые удовлетворяют двум условиям:
Делятся на 5.
Не делятся на 7.
Для начала определим, какие числа делятся на 5 в диапазоне от 1000 до 10000. Для этого нужно найти первое число в этом диапазоне, которое делится на 5 (это число 1000), и последнее число, которое делится на 5 (это число 9995). Теперь мы можем составить последовательность чисел, делящихся на 5 в этом диапазоне:
1000, 1005, 1010, 1015, ..., 9985, 9990, 9995.
Чтобы найти количество чисел, которые делятся на 5 и не делятся на 7, нужно пройти по этой последовательности и отфильтровать числа, которые делятся на 7. Для этого нужно найти первое число в этой последовательности, которое не делится на 7 (это число 1000), и последнее число, которое не делится на 7 (это число 9985). Теперь мы можем составить последовательность чисел, которые делятся на 5 и не делятся на 7 в этом диапазоне:
1000, 1005, 1010, 1015, ..., 9975, 9980, 9985.
Количество чисел в этой последовательности можно найти, разделив разность последнего и первого чисел на 5 и прибавив 1:
количество чисел = (9985 - 1000) / 5 + 1 = 1800.
Таким образом, в диапазоне от 1000 до 10000, есть 1800 чисел, которые делятся на 5 и не делятся на 7.
Делятся на 5.
Не делятся на 7.
Для начала определим, какие числа делятся на 5 в диапазоне от 1000 до 10000. Для этого нужно найти первое число в этом диапазоне, которое делится на 5 (это число 1000), и последнее число, которое делится на 5 (это число 9995). Теперь мы можем составить последовательность чисел, делящихся на 5 в этом диапазоне:
1000, 1005, 1010, 1015, ..., 9985, 9990, 9995.
Чтобы найти количество чисел, которые делятся на 5 и не делятся на 7, нужно пройти по этой последовательности и отфильтровать числа, которые делятся на 7. Для этого нужно найти первое число в этой последовательности, которое не делится на 7 (это число 1000), и последнее число, которое не делится на 7 (это число 9985). Теперь мы можем составить последовательность чисел, которые делятся на 5 и не делятся на 7 в этом диапазоне:
1000, 1005, 1010, 1015, ..., 9975, 9980, 9985.
Количество чисел в этой последовательности можно найти, разделив разность последнего и первого чисел на 5 и прибавив 1:
количество чисел = (9985 - 1000) / 5 + 1 = 1800.
Таким образом, в диапазоне от 1000 до 10000, есть 1800 чисел, которые делятся на 5 и не делятся на 7.
Неизвестно Неизвестно
Ну и бредятина
Для решения этой задачи нужно перебрать все числа от 1000 до 10000 и проверить, делится ли каждое из них на 5 и не делится ли на 7.
Можно написать код на Python, который будет делать это автоматически:
count = 0 # счетчик чисел, удовлетворяющих условию
for i in range(1000, 10001): # перебираем все числа от 1000 до 10000
if i % 5 == 0 and i % 7 != 0: # проверяем условия
count += 1 # если число удовлетворяет условию, увеличиваем счетчик
print(count) # выводим количество чисел, удовлетворяющих условию
После запуска этого кода на экран будет выведено количество чисел, удовлетворяющих условию.
Можно написать код на Python, который будет делать это автоматически:
count = 0 # счетчик чисел, удовлетворяющих условию
for i in range(1000, 10001): # перебираем все числа от 1000 до 10000
if i % 5 == 0 and i % 7 != 0: # проверяем условия
count += 1 # если число удовлетворяет условию, увеличиваем счетчик
print(count) # выводим количество чисел, удовлетворяющих условию
После запуска этого кода на экран будет выведено количество чисел, удовлетворяющих условию.
Нина Иванушкина
Не только на Python, а на любом языке программирования
Вот зачем нам программирование!
count = 0
for i in range(1000, 10001):
if i % 5 == 0 and i % 7 != 0:
count += 1
print(count)
На python. Ответ 1530 чисел
Нина Иванушкина
Странно, а Паскаль считает, что 1544 числа...
Владимир Скакун
Согласен 1544
Неизвестно Неизвестно
Так мож скобок не хватает, нарушен порядок операций?
Похожие вопросы
- Помогите пожалуйста решить задачу по программированию (Pasсal ABC.net).
- Помогите, пожалуйста, решить по информатике
- Pascal | Помогите, пожалуйста, решить задание.
- Домашняя работа по информатике. 9класс.Помогите пожалуйста решить.
- Помогите пожалуйста решить.Срочно.
- Помогите пожалуйста решить задачи по информатике
- Информатика 8 класс задача помогите пожалуйста решить!
- Помогите, пожалуйста, решить задачу по информатике.
- Помогите пожалуйста решить контрольную по информатике
- Помогите пожалуйста решить задачу по информатике :)