XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Общение> Трактир
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Wolfeg
oldfag
offline
Опыт: 23,207
Активность:
Задачка по C++
Вводится длина одномерного массива, состоящего из целых чисел, и его элементы. Составить массив количеств делителей.
Помогите её решить, а то чёт я не врубаюсь как это составить массив количеств делителей о.О есть догадки что для каждого элемента массива содавать новый массив в котором будут хранится его делители, но эт тогда тупость какая то получается.
Может кто-нить уже решал подобное, подскажите как это сделать.
Старый 14.10.2007, 19:42
ShadoW DaemoN

offline
Опыт: 37,078
Активность:
LonelyWolf, постановка задачи=) решал 90% такое же, но на паскале.
Сишный синтаксис точно не помню

Составить массив количеств делителей. Т.е. имеется integer массивы A и B емкостью [0..N-1]. (N - вводится). В массиве А хранятся числа, в B - кол-во делителей. Каждый номер элемента A будет = номеру элемента B.

Здесь удобней будет реализовать функцию подсчета делителей - допустим, getdivcount.
В цикле while (i < sqrt(n)) проверяется остаток от деления (если 0, то sum = sum + 2), затем i++.
Можно еще проверку сделать на полный квадрат (чтобы один лишний делитель не вышел).
getdivcount принимает параметр int, и возвращает int.

Все сводится к тому, что нужно сделать цикл:
Код:
for (i = 0; i < n; i++)
  {
    b[i] = getdivcount(a[i]);
    printf("%d", b[i]);
  }
Старый 14.10.2007, 20:31
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 17:15.