Форум программистов, компьютерный форум CyberForum.ru

Объясните пожалуйста - C++

Восстановить пароль Регистрация
 
__Александр__
7 / 10 / 0
Регистрация: 17.09.2012
Сообщений: 191
Записей в блоге: 2
01.10.2012, 18:43     Объясните пожалуйста #1
объясните пожалуйста: что такое perf(k) ?
Почеиу в коде именно int i=1;i<=k/2;i++ а не i<=k; i++ ?

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
#include<iostream.h>
 #include<conio.h>
 using namespace std;
 void perf(int);
 int total=0;
 void main()
 {
 for(int k=4;k<=10000;k++)
 {
 perf(k);
 if(total==k)
 cout<<"perfect"<<total<<" "<<k<<endl;
 total=0;
 }
 }
 void perf(int k)
 {
 for(int i=1;i<=k/2;i++)
 {
 if(k%i==0)
 {
 total=total+i;
 }
 }
 Комментарий модератора 
Используйте специальные теги форматирования программного кода
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2012, 18:43     Объясните пожалуйста
Посмотрите здесь:

объясните пожалуйста C++
объясните пожалуйста strcrat C++
C++ объясните пожалуйста
C++ Объясните пожалуйста
Объясните пожалуйста C++
C++ Объясните пожалуйста
Объясните пожалуйста! C++
Объясните пожалуйста C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
01.10.2012, 18:44     Объясните пожалуйста #2
Цитата Сообщение от __Александр__ Посмотреть сообщение
perf(k)
вызов функции.
Цитата Сообщение от __Александр__ Посмотреть сообщение
Почеиу в коде именно int i=1;i<=k/2;i++ а не i<=k; i++ ?
Потому что переменная должна быть объявлена.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
01.10.2012, 21:59     Объясните пожалуйста #3
Цитата Сообщение от __Александр__ Посмотреть сообщение
объясните пожалуйста: что такое perf(k) ?
функция которая в помещает в переменную total сумму делителей числа k (число k передается как параметр функции). Таким образом вычисляется совершенные числа.

Цитата Сообщение от __Александр__ Посмотреть сообщение
Почеиу в коде именно int i=1;i<=k/2;i++ а не i<=k; i++ ?
Совершенное число́ - натуральное число, равное сумме всех своих собственных делителей (т. е. всех положительных делителей, отличных от самого́ числа).
Поэтому i<=k/2;
Если написать i<=k; то к этой сумме будет добавлено и само число.
Yandex
Объявления
01.10.2012, 21:59     Объясните пожалуйста
Ответ Создать тему
Опции темы

Текущее время: 17:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru