3 / 3 / 0
Регистрация: 05.04.2011
Сообщений: 30
1

Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равна K

06.04.2011, 13:09. Показов 13080. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите с задачей :'(
Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равна K(K вводится с клавиатуры).
Вот что у меня не получилось, но она не запускается(((В чем ошибка?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
program zadacha;
var
i,j:integer;
c,k,s:real;
begin
writeln('Введите значение k');
readln(k);
for i:=100 to 300
do begin
s:=0;
for j:=1 to 300
do begin
if (i mod j)=0 then begin
c:=j;
s:=s+j;
end;
if s=k then writeln(i);
end;
end;
readln;
end.
 Комментарий модератора 
Перемещено в соответсвующий раздел
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.04.2011, 13:09
Ответы с готовыми решениями:

Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равна 50
Помогите пожалуйста. Найти все целые числа из промежутка от 100 до 300, у которых сумма...

Целые числа из промежутка от 100 до 300, у которых сумма делителей равно K
Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равно K (K вводить с...

Найти все натуральные числа из промежутка от 100 до 300, у которых сумма делителей равна К
найти все натуральные числа из промежутка от 100 до 300, у которых сумма делителей равна К (К...

Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равна 50.
Почему выводит много строк вместо одной? for n in range(100,301): #Задаем границы числа n s = 0...

7
167 / 96 / 23
Регистрация: 13.03.2011
Сообщений: 402
06.04.2011, 13:50 2
Странная конструкция do begin, в паскале однозначно можно определить блок кода так:
BEGIN некие операторы END;
Вам нужно проверить чтобы каждому BEGIN соответствовало END;
Не забудьте откомпилировать программу.
Вам нужно перейти на ветку по Паскалю - там точнее помогут.
1
3 / 3 / 0
Регистрация: 05.04.2011
Сообщений: 30
06.04.2011, 13:54  [ТС] 3
так там ведь есть все END. В чем именно ошибка?
0
0 / 0 / 1
Регистрация: 09.01.2011
Сообщений: 7
06.04.2011, 14:04 4
Запусти программу в PascalABC. Все работает.
0
3 / 3 / 0
Регистрация: 05.04.2011
Сообщений: 30
06.04.2011, 14:05  [ТС] 5
Я запускаю. Неа, не пашет.Запускается но ответ не выводит
0
143 / 143 / 141
Регистрация: 05.04.2011
Сообщений: 270
06.04.2011, 20:12 6
Pascal
1
c,k,s:real;
Pascal
1
c,k,s:Longint
;
0
0 / 0 / 0
Регистрация: 30.11.2020
Сообщений: 1
30.11.2020, 11:11 7
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var
  i, s, h, k, p: integer;
 
begin
  write('введи К ');
  readln(k);
  for i := 1 to 9000 do {я увеличил диапазон чисел, тк в правильные ответы не подходили под изначальный диапазон. совершенные числа: 6 28 496 8126 33550336...}
  begin
    h := i;
    if i mod h = 0 then
      s := s + h;
    if s = k then
    begin
      writeln('S=', s);
      p := p + 1 {p означает ПОМОЩНИК}
    end
    else p := p + 0;
  end;
  if p = 0 then
    writeln('не верно');
end.
0
Модератор
9853 / 5223 / 3304
Регистрация: 17.08.2012
Сообщений: 15,974
06.12.2020, 13:45 8
KonstantinKotya, Вы в курсе, что Ваша программа вообще никак не соответствует вопросу темы? Ваша программа при k=1 выдаёт "s=1", и "не верно" в остальных случаях. И где в условии задачи говорится о совершенных числах? А у Вас они где в программе ищутся? И зачем Вы их упомянули? Просто так, да?

Вы на дату создания темы не смотрели? Теме уже девять лет. Если поднимаете древнюю тему, так пишите хотя бы нормальный ответ, а не позорьтесь на весь мир.

Итак...
Pascal
9
10
11
    h := i;
    if i mod h = 0 then
      s := s + h;
Если h = i, то i mod h = 0 в любом случае, за исключением h = i = 0. поэтому s=k будет только при i = 1.
Pascal
17
    else p := p + 0;
Можно упростить: else p := p; или ещё сильней упростить: else; или ещё сильнее-сильнее упростить: ;
0
06.12.2020, 13:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.12.2020, 13:45
Помогаю со студенческими работами здесь

Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равна k
Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равна k. Не понимаю,...

Найти все целые числа из промежутка от 1 до 300, у которых сумма делителей равна Р
найти все целые числа из промежутка от 1 до 300 у которых сумма делителей равна Р Решите ещё плиз

Найти все целые числа из промежутка от 300 до 600, у которых сумма делителей кратна 10
Вот задача: "Найти все целые числа из промежутка от 300 до 600, у которых сумма делителей кратна...

Найти все целые числа из заданного промежутка у которых сумма делителей равна К
Условие: Найти все целые числа из промежутка от 100 до 300, у которых сумма делителей равна К. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru