Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 1
Регистрация: 28.02.2012
Сообщений: 33
1
.NET 3.x

Дано число P, нужно найти число от 1 до Р, с наибольшим количеством делителей

28.02.2012, 03:46. Показов 1398. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
написал проггу, что не правильно уже 3 часа бьюсь...

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int p;
            int max=0,a = 0;
            Console.Write("Ведите число" + " ");
            p = Convert.ToInt32(Console.ReadLine());
                for (int i = 1; i <= p; i++)
                  {
                     for (int k = 2; k <= (i / 2); k++)
                      {
                          if ((i % k) == 0)
                          {
 
                              if (a > max)
                                  max++;
                                  a++;
                              Console.WriteLine( i);
                          }
                          
                         }
                      }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2012, 03:46
Ответы с готовыми решениями:

Дано n целых чисел. Найти среди них число с наибольшим количеством делителей
Дано n целых чисел.Найти среди них число с наибольшим количеством делителей.

Найти в диапазоне от M до N число с наибольшим количеством делителей. Функция: количество делителей заданного числа
Найти в диапазоне от M до N число с наибольшим количеством делителей. Функция: количество делителей...

В интервале от a до b найти число с наибольшим количеством делителей
a и b вводятся с клавиатуры,представить в виде функции

Найти в диапазоне от M до N число с наибольшим количеством делителей.
Найти в диапазоне от M до N число с наибольшим количеством делителей. Функция: количество делителей...

3
58 / 50 / 16
Регистрация: 23.06.2011
Сообщений: 122
28.02.2012, 19:54 2
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
using System;
using System.Collections.Generic;
using System.Linq;
 
class Program
{
    static void Main(string[] args)
    {
        int p;
        int divMax = 0, prevDivMax = 0, max = 1;
        Console.Write("Ведите число" + " ");
        p = Convert.ToInt32(Console.ReadLine());
        for (int i = 1; i <= p; i++)
        {
            for (int k = 2; k <= (i / 2); k++)
            {
                if ((i % k) == 0)
                {
                    divMax++;
                }
 
            }
            if (divMax > prevDivMax)
            {
                prevDivMax = divMax;
                max = i;
            }
            divMax = 0;
        }
 
        Console.WriteLine(string.Format("Number: {0}\nDivs count: {1}", max, prevDivMax));
        Console.ReadKey();
    }
}
1
0 / 0 / 1
Регистрация: 28.02.2012
Сообщений: 33
29.02.2012, 00:36  [ТС] 3
JeyKip, а вопрос! зачем эта строка?
divMax = 0; (в самом конце)
0
58 / 50 / 16
Регистрация: 23.06.2011
Сообщений: 122
01.03.2012, 14:21 4
т.к. я объявил эту переменную вне цикла. Значит, при каждом обходе цикла эта переменная будет постоянно наращиваться. Для каждого нового проверяемого числа ее необходимо обнулить. Можно было сделать по другому:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for (int i = 1; i <= p; i++)
        {
            int divMax = 0;
            for (int k = 2; k <= (i / 2); k++)
            {
                if ((i % k) == 0)
                {
                    divMax++;
                }
 
            }
            if (divMax > prevDivMax)
            {
                prevDivMax = divMax;
                max = i;
            }
        }
1
01.03.2012, 14:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.03.2012, 14:21
Помогаю со студенческими работами здесь

Найти число с наибольшим количеством делителей из числового промежутка
Помогите решить задачу, пожалуйста, не понимаю как правильно ее реализовать Задан промежуток от...

Найти в диапазоне от M до N число с наибольшим количеством делителей. PHP
Есть форма, в которую мы вводим значения M и N. Ее я написал: &lt;html&gt; &lt;head&gt; &lt;/head&gt; &lt;body&gt;...

В заданном интервале найти число, с наибольшим количеством делителей
На вход программы подаются положительные числа a и b. Гарантируется, что а &lt;= b. Найти число из...

Число с наибольшим количеством делителей
На вход программы подаются положительные числа a и b. Гарантируется, что а &lt;= b. Найти число из...


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

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