Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
AnonymC
1173 / 455 / 28
Регистрация: 23.06.2009
Сообщений: 6,341
Завершенные тесты: 1
#1

функция - C++

16.10.2009, 19:45. Просмотров 482. Ответов 7
Метки нет (Все метки)

у меня возник вопрос,правда не очень умный,вот у меня есть фунция square(c), c=c*c;
из мэина вызываем его таким образом
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <windows.h>
#include <string.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <iostream> 
using namespace std;
int square(int c){
c=c*c;
return (c);
}
int main(){
int a=0;
cin>>a;
square(a);
cout<<a;
Sleep(100000);
}

хочу чтобы А введенный мною преобразовался в его же квадрат..напр ввожу 5,выводит 5 а должно 25
и объясните мне нормально пожалуйста,для его нужен return,точнее как и где надо его юзать

Добавлено через 1 минуту
первый вопрос на счет кода только что решил вот код
C++
1
2
3
4
5
6
7
8
9
void main(){
int a=0;
cin>>a;
 
cout<<square(a);
Sleep(100000);
 
 
}
а как на счт returna?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2009, 19:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос функция (C++):

Функция sqrt: существует более одного экземпляра. Функция перегруженная - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;iomanip&gt; using namespace std; int main(){ float s, p; int c, a; s=0; ...

Перегрузка операций: friend-функция или функция-член класса - C++
Здравствуйте, меня интересует вопрос, в чем разница при перегрузке операторов через operator и friend. Вот к примеру такой код. class...

Функция удаления текста в скобках [2], непосредственно функция + 12кб вложений - C++
Доброго времени суток, случилось так, что пришлось работать с с-строками (лаба, угу), в которой нужно удалить весь текст в скобках,...

какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get() - C++
какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get()

что за функция такая strstr? или это не функция? - C++
void search(sp *list){ sp *prt = list; char f,r; cout&lt;&lt;Rus(&quot;введите текст&quot;)&lt;&lt;endl; cin&gt;&gt;f; cout&lt;&lt;Rus(&quot;введите выходной...

Чистая виртуальная функция функция не имеет оператора переопределения - C++
Пишу программу для записи заметок. Есть 2 класса: Page и Note. Note наследуется от Page. Page.h #pragma once ...

7
valeriikozlov
Эксперт С++
4673 / 2499 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
16.10.2009, 19:57 #2
МедведЪ,
В твоем первом коде оператор return должен использоваться 2 раза:
- один раз он у тебя используется как надо в функции square().
- второй раз должен быть перед выходом из main(), ты ведь сам написал:
int main()
{
. . . .
А в первом коде можно было 15 строку заменить на:
a=square(a);
ну или так как ты сделал во втором коде .
1
TanT
эволюционирую потихоньку
466 / 464 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
16.10.2009, 19:59 #3
не совсем вкурил чего про ретурн не понятно?
у тебя в коде логическая ошибка

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <windows.h>
#include <string.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <iostream> 
using namespace std;
int square(int c){
c=c*c;
return (c);
}
int main(){
int a=0;
cin>>a;
square(a);
cout<<a;  // выводишь а, а не результат square , надо типа cout<<square(a);
Sleep(100000);
}
и я бы перписал функцию так
C++
1
2
3
4
int square(int c)
{
    return c*c;
}
Добавлено через 55 секунд
всё живое всё меняется и второй код появился
1
AnonymC
1173 / 455 / 28
Регистрация: 23.06.2009
Сообщений: 6,341
Завершенные тесты: 1
16.10.2009, 22:00  [ТС] #4
valeriikozlov, про ретурн знаю,я вместо инт воид написал

Цитата Сообщение от TanT Посмотреть сообщение
return c*c;
а с этого уже не понятно....то говорят что возвращает,то с*с
0
insolent
826 / 344 / 15
Регистрация: 30.01.2009
Сообщений: 1,204
16.10.2009, 23:48 #5
МедведЪ, попробуй как-то так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
using namespace std;
 
void square(int &c)
{
     c *= c;
}
 
int main()
{
    int a;
    cin >> a;
    square(a);
    cout << a << endl;
    getchar();
    return 0;
}
0
TanT
эволюционирую потихоньку
466 / 464 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
17.10.2009, 07:49 #6
Цитата Сообщение от МедведЪ Посмотреть сообщение
valeriikozlov, про ретурн знаю,я вместо инт воид написал


а с этого уже не понятно....то говорят что возвращает,то с*с
и чего не понятного?
C++
1
2
int square(int c){
return с*с;}
возвращает квадрат принимаемого параметра


C++
1
2
3
4
void square(int &c)
{
    c *= c;
}
ничего не возвращает, но модифицирует принимаемый объект, ибо ссылка

имхо, первый вариант красивши в телефункции, но так как передаётся сам объект а не указатель или ссылка, по затратности ресурсов памяти он менее оптимален, но опять же в данном варианте это неимеет никакого значения, так как затраты мизерные
0
AnonymC
1173 / 455 / 28
Регистрация: 23.06.2009
Сообщений: 6,341
Завершенные тесты: 1
17.10.2009, 10:06  [ТС] #7
TanT, я думал что ретурн что то вроде КОНЦА программы,напр в case-break
0
TanT
эволюционирую потихоньку
466 / 464 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
17.10.2009, 10:19 #8
Цитата Сообщение от МедведЪ Посмотреть сообщение
TanT, я думал что ретурн что то вроде КОНЦА программы,напр в case-break
не совсем, ты же знаешь как с английского ретурт переводиться (возврат), то есть чего то надо вернуть, а значить ещё может быть не конец , покой нам только сниться

но из тела функции мы конечно вываливаемя, тока что-то унося с собой
1
17.10.2009, 10:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.10.2009, 10:19
Привет! Вот еще темы с ответами:

Создать производный класс, в котором реализована функция умножения вектора на число и функция сложения двух векторов - C++
Write программу с использованием класса Вектор (не без помощи форумчанина), но необходимо создать производный класс, в котором реализована...

Функция заполняющая массив и функция вывода массива - C++
Напишите две функции. Первая функция заполняет массив, вторая функция выводит массив на экран

Нужно сделать, чтобы программа состояла из 3 функций, тоесть 1-ая функция ввода массива, 2-ая основная функция, 3-я- вывод массива - C++
Есть программа #include &lt;iostream&gt; #include &lt;algorithm&gt; const int N = 5; int handSet(void) { int a; std::cout...

Функция возвращающая абсолютное разницу первого и второго параметров и функция типа int, возвращающая минимальное из трех целых чисел - C++
Разработать заданные согласно условия функции и сделать в главной программе по два вызова этих функций с различными параметрами. Для...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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