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

Функции (массивы) - C++

Восстановить пароль Регистрация
 
taeas1995
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
06.11.2012, 20:00     Функции (массивы) #1
Помогите пожалуйста исправить ошибки в коде. Вот программа (операции над массивами в виде функций):

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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include<iostream.h>
#include<conio.h>
#include<math.h>
void main(){
const int n=10;
float mas[n];
 
void vvid(float mas[],int n);
for(int i=0;i<n;i++)
{cout<<i+1<<"-iy element masuvy:";
cin>>mas[i]; };};
 
void vivod(float mas[],int n){
for(int i=0;i<n;i++)
cout<<mas[i]<<" ";
cout<<endl; };
 
float sum(float mas[],int n){
float s=0;
for(int i=0;i<n;i+=2)
s+=mas[i];
return s; }
 
float sum2(float mas[],int n){
int first=-1;
int last=-1;
int summ=0;
for(int i=0;i<n;i++)
{
if (mas[i]<0 && first<0)
first=i;
if (mas[i]<0)
last=i; }
for(i=first+1; i<last; i++)
summ+=mas[i];
return summ;}
 
float peretvor(float mas[],int n){
for(int i=0;i<n;i++)
if (fabs(mas[i])<=1)
mas[i]=0;
return 0;};
 
vvid(mas,n);
vivod(mas,n)
cout<<"Suma elementiv z neparnum nomerom="<<sum(mas,n)<<endl;
cout<<"Suma mish 1 i ostannim videmnum elementom="<<sum2(mas,n)<<endl;
peretvor(mas,n);
vivod(mas,n);
getch();
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2012, 20:00     Функции (массивы)
Посмотрите здесь:

Массивы и функции C++
массивы и функции C++
Функции и массивы в С++ C++
Массивы и функции C++
массивы и функции C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
06.11.2012, 20:01     Функции (массивы) #2
Какого рода ошибка сразу писать надо, иначе отпадает желание копаться в коде.
Почитал код. Сплошной копипаст. Хоть бы функцию main сделал нормально.
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
06.11.2012, 20:03     Функции (массивы) #3
Одна ошибка на лицо, void main писать не корректно, надо int main
taeas1995
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
06.11.2012, 20:12  [ТС]     Функции (массивы) #4
там где vvid(mas,n) пишет:style of function definition is now obsolete
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
06.11.2012, 20:26     Функции (массивы) #5
Все это просто так болтается в воздухе.

C++
1
2
3
4
5
6
7
8
9
vvid(mas,n);
vivod(mas,n)
cout<<"Suma elementiv z neparnum nomerom="<<sum(mas,n)<<endl;
cout<<"Suma mish 1 i ostannim videmnum elementom="<<sum2(mas,n)<<endl;
peretvor(mas,n);
vivod(mas,n);
getch();
return 0;
}
C++
1
2
3
4
5
6
7
void main()
{
    const int n=10;
    float mas[n];
     
    void vvid(float mas[],int n);
...
ф-ция в й-ции? Причем и не инициализированная.
Артем Смирнов
6 / 6 / 1
Регистрация: 15.05.2012
Сообщений: 40
06.11.2012, 21:00     Функции (массивы) #6
taeas1995, У вас ни одна функция не объявлена (нет прототипов). Объявление функции устанавливает ее имя, а также тип возвращаемого значения и список параметров. Объявление функции должно располагаться в глобальной области видимости, до начала функции main. С определением ф-ий у вас тоже проблема.

Не по теме:

А почему подключаете все заголовки в таком старом формате?

C++
1
<iostream.h>

taeas1995
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
06.11.2012, 21:16  [ТС]     Функции (массивы) #7
то никто не знает как исправить? на завтра очень нужно( и я уже 2 часа как исправляю и ничего не получается(
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
06.11.2012, 21:18     Функции (массивы) #8
Делитесь результатами. По первому коду править трудно, потому что почти ничерта не понятно.
taeas1995
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
06.11.2012, 21:51  [ТС]     Функции (массивы) #9
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include<iostream.h>
#include<conio.h>
#include<math.h>
int main(){
const n=10;
float mas[n];
void vvid(float mas[],int n);
for(int i=0;i<n;i++)
cout<<i+1<<"-iy element masuvy:";
cin>>mas[i];
return 0;}
 
void vivod(float mas[],int n){
for(int i=0;i<n;i++)
cout<<mas[i]<<" ";
cout<<endl; };
 
float sum(float mas[],int n){
float s=0;
for(int i=0;i<n;i+=2)
s+=mas[i];
return s; }
 
float sum2(float mas[],int n){
int first=-1;
int last=-1;
int summ=0;
for(int i=0;i<n;i++)
{
if (mas[i]<0 && first<0)
first=i;
if (mas[i]<0)
last=i; }
for(i=first+1; i<last; i++)
summ+=mas[i];
return summ;}
 
float peretvor(float mas[],int n){
for(int i=0;i<n;i++)
{if (fabs(mas[i])<=1)
mas[i]=0;
return 0;}
 
{
vvid(mas,n);
vivod(mas,n);
cout<<"Suma elementiv z neparnum nomerom="<<sum(mas,n)<<endl;
cout<<"Suma mish 1 i ostannim videmnum elementom="<<sum2(mas,n)<<endl;
peretvor(mas,n);
vivod(mas,n);
getch();
return 0;}
}
И тоже ошибки есть(
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
06.11.2012, 22:00     Функции (массивы) #10
Чушь. Вы даже ничего не переделали.

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
25
26
27
28
29
30
31
void vivod(float mas[], int n)
{
    for(int i=0;i<n;i++)
        cout<<mas[i]<<" ";
    cout<<endl;
}
 
float sum(float mas[],int n)
{
    float s=0;
    for(int i=0;i<n;i+=2)
        s+=mas[i];
    return s;
}
 
float sum2(float mas[],int n)
{
    int first =- 1, last =- 1, summ = 0;
    
    for(int i=0; i < n; i++)
    {
        if (mas[i]<0 && first<0)
            first=i;
        if (mas[i]<0)
            last=i;
    }
    for(int i = (first+1); i < last; i++)
        summ += mas[i];
        
    return summ;
}
В этом обрывке все довольно ясно, и то были ошибки(в представленном мной коде - поправлены)

Что нужно в int main() и в float peretvor(float mas[],int n) я понять не могу. Полный бред. По коду будет вызываться int main(), но в нем нет ничего толкового. peretvor нигде не вызывается.

Не пудрите людям мозги, да и себе тоже. Напишите задание.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.11.2012, 22:50     Функции (массивы)
Еще ссылки по теме:

функции (массивы) C++
Массивы и функции C++

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

Или воспользуйтесь поиском по форуму:
taeas1995
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
06.11.2012, 22:50  [ТС]     Функции (массивы) #11
У меня есть программа(только без функций). И надо оформить у виде функий(ввод вывод две на сумы и на преобразование). Помогите плиз. (программа полностью рабочая):
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include<iostream.h>
#include<conio.h>
#include<math.h>
int main () {
const int n=5;
int mas[n];
int i;
int j;
clrscr();
for(i=0;i<n;i++)
{ cout<<i+1<<"-iy element:";
cin>>mas[i];
};
 
for(i=0;i<n;i++)
cout<<mas[i]<<" ";
cout<<endl;
float suma=0;
{for(i=0;i<n;i+=2)
suma+=mas[i]; }
cout<<"Suma nevarnux elementiv="<<suma<<endl;
 
int first=-1;
int last=-1;
int summ=0;
for(i=0;i<n;i++)
{
if (mas[i]<0 && first<0)
first=i;
if (mas[i]<0)
last=i; }
for(i=first+1; i<last; i++)
summ+=mas[i];
cout<<"Suma mish 1 i ostannim videmnum elementom="<<summ<<endl;
 
for(i=0;i<n;i++)
if (abs(mas[i])<=1)
mas[i]=0;
 
for (i=0;i<n;i++)
cout<<mas[i]<<" ";
cout<<endl;
 
getch();
return 0;
}
Добавлено через 24 минуты
А задние такое: 1) сумма элементов массива с непарным номером. 2) сума между 1 и последним отрицательными элементами . 3)преобразовать массив так что бы элементи по модулю меньше равно 1 исчезли (потом массив сдвинулся и вконце эти элементи были нулями). Последнее задание я только часть сделал(если кто-то знает то помогите плиз) . И нужно все ети задания оформить в виде функций(ввод выаод массива тоже)
Yandex
Объявления
06.11.2012, 22:50     Функции (массивы)
Ответ Создать тему
Опции темы

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