Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.02.2015, 15:49   #1
Саша1990
Пользователь
 
Регистрация: 01.02.2015
Сообщений: 16
По умолчанию Пожалуйста помогите закомментировать программу(С++)

int func(int a,int b)
{
int ta=a;
int tb=b;
int suma=0;
int sumb=0;
while(ta!=0)
{
suma+=ta%10;
ta/=10;

}
while(tb!=0)
{
sumb+=tb%10;
tb/=10;

}
if(suma>sumb)
return a;
else
return b;
}
Саша1990 вне форума Ответить с цитированием
Старый 09.02.2015, 16:03   #2
magnet
Пользователь
 
Регистрация: 02.02.2015
Сообщений: 24
По умолчанию

Цитата:
Сообщение от Саша1990 Посмотреть сообщение
Пожалуйста помогите закомментировать программу(С++)

Закомментировал:
Код:
/*
int func(int a,int b)
{
    int ta=a;
    int tb=b;
    int suma=0;
    int sumb=0;
    while(ta!=0)
    {
        suma+=ta%10;
        ta/=10;
 
    }
    while(tb!=0)
    {
        sumb+=tb%10;
        tb/=10;
 
    }
    if(suma>sumb)
        return a;
    else
        return b;
}
*/
magnet вне форума Ответить с цитированием
Старый 09.02.2015, 16:52   #3
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,609
По умолчанию

Отличие от другой закомментированной программы в том, что
в данной изменяются значения копий параметров переданных в функцию, в то время как в другой программе изменяются параметры, переданные в функцию, но функция делает то же самая, что и та другая функция в другой теме. Причем значения в вызывающей функции не меняются в обоих случаях, так как передача осуществляется по значению (ByVal), а не по указателю и не по ссылке.


Код:
// функция принимает два параметра типа int и возвращает значение типа int
int func(int a,int b)
{
int ta=a; // сохранение локальной копии параметра a, переданного в функцию
int tb=b; // сохранение локальной копии параметра b, переданного в функцию
int suma=0; // сумма цифр числа a
int sumb=0; // сумма цифр числа b
while(ta!=0) // пока локальная копия параметра a не станет нулем
{
suma+=ta%10; // суммирование цифр числа a
ta/=10; // 

}
while(tb!=0)
{
sumb+=tb%10; // суммирование цифр числа b
tb/=10;

}
if(suma>sumb) // если сумма цифр числа a больше суммы цифр числа b, то из функции возвращается a. Если сумма цифр числа a не больше суммы цифр числа b или они равны, то возвращается b
return a;
else
return b;
}
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пожалуйста помогите закомментировать программу(С++) Саша1990 Помощь студентам 1 09.02.2015 16:45
Пожалуйста помогите закомментировать программу(С++) Саша1990 Помощь студентам 2 09.02.2015 16:23
Помогите закомментировать задачу alina1995 Общие вопросы C/C++ 3 10.12.2014 19:10
Помогите закомментировать каждую строку privod Общие вопросы C/C++ 3 02.10.2014 16:49
Дельфи(помогите пожалуйста закомментировать строки) jula939393 Помощь студентам 2 17.04.2014 10:02