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

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

Войти
Регистрация
Восстановить пароль
 
Lerusik
#1

массивы - C++

26.06.2010, 01:11. Просмотров 724. Ответов 6
Метки нет (Все метки)

Здравствуйте. помогите пожалуйста в решении задач
1)Дан массив А[n]. Каждый его элемент, кроме первого, заменить суммой всех предыдущих элементов (т.н. нарастающий итог).

2)Имеется целочисленный массив из n элементов. Напишите программу для ’сжатия’ этого массива путем выбрасывания из него одинаковых элементов
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2010, 01:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос массивы (C++):

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

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

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

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

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

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

6
dxdy
97 / 97 / 5
Регистрация: 14.06.2010
Сообщений: 283
26.06.2010, 01:52 #2
Задача 1.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
int main(){
    int a[] = {3,4,0,2,1,8};
    int n = sizeof(a)/sizeof(int);
 
    int sum = a[0], tmp = 0; 
    for(int i = 1; i < n; i++){
        tmp = a[i]; a[i] = sum; sum += tmp;
    }
    for(int i = 0; i < n; i++){
        cout << a[i] << " ";
    }
    cout << endl;
    return 0;
}
Условие задачи 2 не особо понял, одинаковые элементы нужно перенести в конец массива или занести "хорошие результаты" в новый массив?
0
Хохол
Эксперт С++
475 / 443 / 13
Регистрация: 20.11.2009
Сообщений: 1,292
26.06.2010, 02:43 #3

Не по теме:

Извините, люблю оптимизировать.


1.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main(){
        int n;
        cin >> n;
        int a[1000];
        for(int i = 0; i < n; i++)
             cin >> a[i]; 
        for(int i = 1; i < n; i++)
             a[i] += a[i-1];
        for(int i = 0; i < n; i++)
             cout << a[i] << ' ';
        getch();
}
0
ISergey
Maniac
Эксперт С++
1390 / 901 / 55
Регистрация: 02.01.2009
Сообщений: 2,693
Записей в блоге: 1
26.06.2010, 03:55 #4
Цитата Сообщение от Хохол Посмотреть сообщение
Не по теме:
Извините, люблю оптимизировать.
Цитата Сообщение от Хохол Посмотреть сообщение
C++
1
2
3
4
5
6
for(int i = 0; i < n; i++)
 cin >> a[i]; 
 for(int i = 1; i < n; i++)
 a[i] += a[i-1];
 for(int i = 0; i < n; i++)
 cout << a[i] << ' ';
тогда так...
C++
1
2
3
4
5
6
7
cin >> a[0]; 
for(int i = 1; i < n; i++){
             cin >> a[i]; 
             a[i] += a[i-1];
             cout << a[i-1] << ' ';
}
cout << a[n-1] << ' ';
0
Mur3ik
102 / 102 / 4
Регистрация: 12.05.2010
Сообщений: 232
26.06.2010, 13:19 #5
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <iostream>
#include <clocale>
#include <cmath>
#include <ctime>
using namespace std;
 
 
void main()
{
    int *a,*b;
    int n,k=0;
    setlocale (LC_CTYPE,"rus");
    cout<<"Введите размер массива"<<endl;
    cin>>n;
    a = new int [n];
    b = new int [n];
    
        srand(time(NULL));
        for(int i=0; i<n; i++)
        {
            a[i]=rand()%10+1;
        }
    for(int i=0; i<n; i++)
    {
        int skip=0;
        for(int j=i+1; j<n; j++)
        {
            if(a[i]==a[j])
                skip++;
        }
        if(skip==0)
        {
            b[k++]=a[i];
        }
    }
    cout<<"Старый массив:"<<endl;
    for(int i=0; i<n; i++)
    {
    cout<<a[i]<<" ";
    }
    cout<<endl<<"Новый массив"<<endl;
    for(int i=0; i<k; i++)
    {
    cout<<b[i]<<" ";
    }
 
 
 
}
0
dxdy
97 / 97 / 5
Регистрация: 14.06.2010
Сообщений: 283
26.06.2010, 13:28 #6
Mur3ik по условию задачи мы всего лишь проверяем на первый одинаковый элемент, поэтому можно немного упростить задачу:
C
1
2
3
4
5
6
7
8
9
10
11
for(int i=0; i<n; i++){
        bool fl = true;
        for(int j=i+1; j<n; j++){
               if(a[i]==a[j]){
            fl = false; break;
        }
        }
        if(fl){
           b[k++]=a[i];
        }
}
0
Lerusik
26.06.2010, 20:03 #7
Спасибо всем огромное=*
26.06.2010, 20:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.06.2010, 20:03
Привет! Вот еще темы с ответами:

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

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

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

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


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

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

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