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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
PointsEqual
ниначмуроФ
835 / 519 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
#1

Вызов функции. - C++

24.02.2010, 19:51. Просмотров 594. Ответов 4
Метки нет (Все метки)

Здрасти, у меня есть функция вычесления суммы цифр числа
C++
1
2
3
4
5
6
7
8
9
int sum_digit(int x)
{
      int sum=0;
      while (x!=0){
        sum=sum+(x%10);
        x=x/10;
      }
      return sum;
}
и функция, которая проверяет: делится ли введенное число на 3 без остатка
C++
1
2
3
4
5
bool onthree(int x){
    if (!(sum_digit(x)%3))
    return 1;
    return 0;
}

а вот сам вопрос: корректно ли так вызывать одну функцию из другой?(вызов sum_digit в onthree)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2010, 19:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вызов функции. (C++):

Вызов функции внутри другой функции с передачей локальной переменной по ссылке - C++
Столкнулся с очень с интересной проблемой. Можно ли так делать? #include <iostream> using std::cout; void f(const int &ref){...

Вызов родовой функции (нужно передать массив в качестве аргумента функции через указатель) - C++
#include <iostream> using namespace std; template <class T1> class mas { public: T1 n; T1 a; void input() ...

Вызов функции в параметре другой функции - C++
программа: #include <iostream> using namespace std; struct E { E() {} }; void f(const E& e)

Вызов функции в возврате значения функции - C++
Есть функция: int function1(a) { ...... return function2(function1(b),function1(c)); } Как работает такая хитрая система?

вызов функции из под функции - C++
Добрый вечер. Такая ситуация: есть функция, назовем ее MainThreadFunc. Как можно сделать так, чтобы любая другая функция, которую я напишу,...

Вызов функции в C++ - C++
есть циклический вызов функции: for (int i=0; i<start; i++) { if (classicZOT())...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
fasked
Эксперт С++
4935 / 2515 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
24.02.2010, 19:52 #2
почему нет?
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
24.02.2010, 21:04 #3
PointsEqual, а что тебе мешает немного их поправив, вызывать последовательно?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int sum_digit(int x)
{
      int sum=0;
      while (x!=0){
        sum=sum+(x%10);
        x=x/10;
      }
      return sum;
}
 
bool onthree(int x){
  return x % 3 == 0;
}
C++
1
2
3
4
5
6
7
8
9
//...
int main()
{
  int n;
  // ...
  int sum_of_digit = sum_digit(n);
  bool on_three = onthree(sum_of_digit );
  //...
}
PointsEqual
ниначмуроФ
835 / 519 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
25.02.2010, 02:15  [ТС] #4
Цитата Сообщение от CyBOSSeR Посмотреть сообщение
PointsEqual, а что тебе мешает немного их поправив, вызывать последовательно?
я и так пробовал, но хочется узнать как все таки "правильние" (эффективнее)
M128K145
Эксперт С++
8286 / 3505 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
25.02.2010, 02:24 #5
PointsEqual, при желании можно вызывать хоть так
C++
1
bool on_three = onthree(sum_digit(n));
Главное не переусердствовать с такой вложенностью(желательно не более трех вложений)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2010, 02:24
Привет! Вот еще темы с ответами:

Вызов функции - C++
#include "stdafx.h" #include <locale> #include <iostream> using namespace std; class Bankomat { public: Bankomat(){}; ...

Вызов функции - C++
Помогите пожалуйста решить завтра зачет, а задачу не могу решить последнюю. Составить программу формирования элементов массивов Х, У и...

Вызов функции - C++
Имеется такая вот функция, и к ней нужно написать вызов. #include <stdio.h> char *F12(char **p, int n) { int k,i,j; for...

вызов функции - C++
как правильно вызвать данную функцию? typedef int key_t; typedef double value_t; value_t find(key_t key);


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
25.02.2010, 02:24
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru