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

Не могу написать задачу по массивам! - C++

Восстановить пароль Регистрация
 
sniperni
0 / 0 / 0
Регистрация: 28.11.2011
Сообщений: 46
28.11.2011, 18:50     Не могу написать задачу по массивам! #1
Мне нужно написать следующую программу на Си:
4. В одномерном массиве, состоящем из n вещественных элементов, вычислить:
• количество положительных элементов массива;
• сумму элементов массива, расположенных после последнего элемента равного нулю.
• Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом – все остальные.

Я взял кол-во элементов равное 10.
Я написал прогу для первого пункта - подсчёта положительных элементов массива.
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 ()
{
double mas[10];
int kp=0;
for(int i=1;i<=10;i++)
{
cout<<"Vvedite element massiva:";
cin>>mas[i];
if(mas[i]>0)
kp++;
}
cout<<"Kol-vo polojitelnich elementov massiva:"<<kp;
getch();
}
Помогите пожалуйста!!!! надо дополнить программу для второго и третьего пунктов.... никак не получается ничего!!!! помогите пожалуйста!!! Заранее спасибо!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2011, 18:50     Не могу написать задачу по массивам!
Посмотрите здесь:

C++ Не могу понять задачу
помогите пожалуйста написать программу по двухмерным массивам. C++
Не могу понять задачу с векторами C++
C++ Не могу понять задачу с массивами.
C++ не могу доделать задачу
C++ Массивы. Написать функцию, которая по массивам действительных чисел x1, x2, ..., xn вычисляет: x1xn + x2xn-1 + ... + xnx1
Не могу разобрать задачу C++
Вставить нужное в задачу.Не могу разобраться C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
R136a1
 Аватар для R136a1
142 / 111 / 15
Регистрация: 14.04.2011
Сообщений: 261
28.11.2011, 19:22     Не могу написать задачу по массивам! #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
#include <iostream>
#include <iomanip>
 
int main()
{
    float massiv[10] = {1.2, 1.3,-3.0, 4.2, 0, 6.1, 0, -1.2, 7.7, -1.4};
    int pl = 0;
    int zero;
    float sum = 0;
 
    for(int i = 0; i < 10; i++)
        if(massiv[i] >= 0)
            pl++;
 
 
    for(int i = 0; i < 10; i++)
        if(massiv[i] == 0)
            zero = i;
 
    for(zero++; zero < 10; zero++)
        sum += massiv[zero];
 
    for(int n = 1; n < 10; n++)
    {
        float ins = massiv[n];
        int mi = n;
 
        while((mi > 0) && (massiv[mi-1] > ins))
        {
            massiv[mi] = massiv[mi-1];
            mi--;
        }
 
        massiv[mi] = ins;
    }
 
    std::cout << "Положительные элементы: " << pl
          << "\nСумма после 0: " << sum
          << "\nОтсортированный массив: " << std::endl;
 
    for(int i = 0; i < 10; i++)
        std::cout << std::setw(5) << std::fixed << std::setprecision(1) << massiv[i];
 
    std::cout << std::endl;
 
    return 0;
}
Цитата Сообщение от sniperni Посмотреть сообщение
• Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом – все остальные.
я просто отсортировал массив
sniperni
0 / 0 / 0
Регистрация: 28.11.2011
Сообщений: 46
07.12.2011, 17:49  [ТС]     Не могу написать задачу по массивам! #3
А подскажите пожалуйста,что происходит в этих строках ниже:
C++
1
2
3
4
5
6
7
for(int i = 0; i < 10; i++)
        std::cout << std::setw(5) << std::fixed << std::setprecision(1) << massiv[i];
 
    std::cout << std::endl;
 
    return 0;
}
ПОДСКАЖИТЕ!!!
Yandex
Объявления
07.12.2011, 17:49     Не могу написать задачу по массивам!
Ответ Создать тему
Опции темы

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