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

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

Войти
Регистрация
Восстановить пароль
 
SynaptyC
0 / 0 / 0
Регистрация: 04.10.2010
Сообщений: 31
#1

Массивы - C++

25.11.2010, 13:44. Просмотров 360. Ответов 6
Метки нет (Все метки)

1) Найти максимальный по модулю массив.
2) Найти сумму элементов массива, расположенных между первым и вторым положительными элементами.
3) Преобразовать массив таким способом, чтобы элементы, равные нулю, располагались после всех остальных.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2010, 13:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массивы (C++):

Массивы. Циклические алгоритмы (Заполнить массивы случайными числами, лежащими в интервале 0 до 100) - C++
Доброго дня, уважаемые форумчане, помогите пожалуйста решить задание. Заполнить массивы случайными числами, лежащими в интервале 0 до...

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц) - C++
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник местонахождением соответствующего элемента aij (см....

Попадание точки. Массивы чисел. Массивы записей. - C++
Всем привет. По языкам задали три контрольные на си. Я сам си не знаю, даже не представляю, поэтому очень нужна ваша помощь. ...

Многомерные массивы, как перебирать внутренние массивы - C++
Здравствуйте. Такой учебный код и плохо понимаю как перебираются внутренние массивы, может кто пояснит подоходчивее. Именно внутренний...

массивы указателей,указатели на массивы - C++
Понимаю что тема эта изжевана, но я ещё жую.Хочу, чтобы усвоилось. допустим есть QStringList a; a.append("мамa"); ...

Массивы структур и массивы строк - C++
Здравствуйте. Возникла проблема с одной работой: Постановка задачи: 1. Сформировать динамический массив из элементов структурного типа....

6
-comrade-
355 / 356 / 42
Регистрация: 11.06.2010
Сообщений: 703
25.11.2010, 14:56 #2
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
#include<iostream>
 
using namespace std;
 
int main()
{
    int i,n,k1=0,k2=0,S=0,max;
    cout<<"  n="; cin>>n;
    int* a=new int [n];
    cout<<"  Enter elements: ";
    for(i=0;i<n;i++) cin>>a[i];
    max=a[0];
    for(i=1;i<n;i++) if(max<a[i]) max=a[i];
    cout<<"  max="<<max<<endl;
    for(i=0;;i++)   if(a[i]>0) { k1=i; break; }
    for(i=n-1;;i--) if(a[i]>0) { k2=i; break; }
    if(k1!=k2) 
    { 
        for(i=k1+1;i<k2;i++) S+=a[i];
        cout<<"  S="<<S<<endl;
    }
    else cout<<"  Impossible to count S"<<endl;
    cout<<"  New array: ";
    for(i=0;i<n;i++) if(a[i])    cout<<a[i]<<" "; 
    for(i=0;i<n;i++) if(a[i]==0) cout<<a[i]<<" "; 
    delete [] a;
    cout<<endl;
    system("pause");
    return 1;
}
1
Genius Ignat
1238 / 776 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
25.11.2010, 14:58 #3
3).
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
#include <stdio.h>
#include <stdlib.h>
 
#define size 10
 
int main(){
 int m[size] = {7, 6, 0, 4, 0, 3, 0, 1, -2, 0};
 int i, j ,tmp;
 
 for( i = 0 , j = 0 ; i < size ; i++ )
     if(m[i] > 0||m[i] < 0 ){
        tmp =  m[i];
        m[i] = m[j];
    m[j] = tmp;
        j++;
     }
 
 
 for( i = 0 ; i < size ; i++ )printf("%d ",m[i]);
 printf("\n");
 
 
 system("pause");
 return 0;
}
1
-comrade-
355 / 356 / 42
Регистрация: 11.06.2010
Сообщений: 703
25.11.2010, 21:48 #4
Если максимальный по модулю, то так:
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
#include <iostream>
#inckude <math.h>
 
using namespace std;
 
int main()
{
    int i,n,k1=0,k2=0,S=0,max;
    cout<<"  n="; cin>>n;
    int* a=new int [n];
    cout<<"  Enter elements: ";
    for(i=0;i<n;i++) cin>>a[i];
    max=a[0]; imax=0;
    for(i=1;i<n;i++) if(max<abs(a[i])) { max=abs(a[i]); imax=i; }
    cout<<"  max="<<a[imax]<<endl;
    for(i=0;;i++)   if(a[i]>0) { k1=i; break; }
    for(i=n-1;;i--) if(a[i]>0) { k2=i; break; }
    if(k1!=k2) 
    { 
        for(i=k1+1;i<k2;i++) S+=a[i];
        cout<<"  S="<<S<<endl;
    }
    else cout<<"  Impossible to count S"<<endl;
    cout<<"  New array: ";
    for(i=0;i<n;i++) if(a[i])    cout<<a[i]<<" "; 
    for(i=0;i<n;i++) if(a[i]==0) cout<<a[i]<<" "; 
    delete [] a;
    cout<<endl;
    system("pause");
    return 1;
}
1
SynaptyC
0 / 0 / 0
Регистрация: 04.10.2010
Сообщений: 31
05.12.2010, 13:25  [ТС] #5
Цитата Сообщение от -comrade- Посмотреть сообщение
Если максимальный по модулю, то так:
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
#include <iostream>
#inckude <math.h>
 
using namespace std;
 
int main()
{
    int i,n,k1=0,k2=0,S=0,max;
    cout<<"  n="; cin>>n;
    int* a=new int [n];
    cout<<"  Enter elements: ";
    for(i=0;i<n;i++) cin>>a[i];
    max=a[0]; imax=0;
    for(i=1;i<n;i++) if(max<abs(a[i])) { max=abs(a[i]); imax=i; }
    cout<<"  max="<<a[imax]<<endl;
    for(i=0;;i++)   if(a[i]>0) { k1=i; break; }
    for(i=n-1;;i--) if(a[i]>0) { k2=i; break; }
    if(k1!=k2) 
    { 
        for(i=k1+1;i<k2;i++) S+=a[i];
        cout<<"  S="<<S<<endl;
    }
    else cout<<"  Impossible to count S"<<endl;
    cout<<"  New array: ";
    for(i=0;i<n;i++) if(a[i])    cout<<a[i]<<" "; 
    for(i=0;i<n;i++) if(a[i]==0) cout<<a[i]<<" "; 
    delete [] a;
    cout<<endl;
    system("pause");
    return 1;
}
Ошибочку выдаёт в строчке max=a[0]; imax=0; там что-то с imax, в следующей строке тоже. Можно как-то это по другому записать ?
0
asics
Freelance
Эксперт С++
2853 / 1788 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
05.12.2010, 13:28 #6
SynaptyC, Естественно, так-как переменная imax не обявлена, напишы эту строчку так -
C++
1
max=a[0]; int imax=0;
1
SynaptyC
0 / 0 / 0
Регистрация: 04.10.2010
Сообщений: 31
05.12.2010, 13:32  [ТС] #7
Цитата Сообщение от asics Посмотреть сообщение
SynaptyC, Естественно, так-как переменная imax не обявлена, напишы эту строчку так -
C++
1
max=a[0]; int imax=0;
Спасибо
0
05.12.2010, 13:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.12.2010, 13:32
Привет! Вот еще темы с ответами:

Массивы структур и массивы строк - C++
1. Сформировать динамический массив из элементов структурного типа. Структурный тип определен в варианте. 2. Распечатать...

массивы указателей,указатели на массивы - C++
Понимаю что тема эта изжевана, но я ещё жую.Хочу, чтобы усвоилось. допустим есть QStringList a; a.append(&quot;мамa&quot;); ...

индексные массивы и адресные массивы - C++
погитите решить задачу c массивами двумя способами {индексные и адресные} { Вычислить суммы элементов каждой строки матрицы Х(20х20),...

Массивы структур, массивы векторов - C++
Разработайте тип данных «Вектор в трехмерном пространстве» в виде структуры, поля которой — координаты вектора. Напишите следующие функции:...


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

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

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