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

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

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

Одномерный массив - C++

06.02.2012, 10:40. Просмотров 375. Ответов 5
Метки нет (Все метки)

В одномерном массиве состоящем из n вещественных элементов, вычислить:
1) количество элементов массива равных 0.
2)сумму элементов массива, расположенных после минимального элемента. Упорядочить элементы массива по возрастанию модулей элементов.

Сделать нужно на C, помогите пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.02.2012, 10:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Одномерный массив (C++):

Матрица и одномерный массив (Составить одномерный массив, содержащий количество буквенных символов в каждом из ее столбцов, подсчет символов) - C++
Помогите решить задачку: Дана матрица 5х7, элементами которой являются значения символьного типа. Составить одномерный массив, содержащий...

Массив: преобразорвать двумерный массив в одномерный и отсортировать его методом пузырька - C++
всем привет. народ помогите с прогой, конкретно с функцией sort (65 строка), она должна двухмерный массив перевести построчно в одномерный...

Массив: Все элементы массива, кратные трем, записать в одномерный массив. - C++
Дан двумерный массив размером n x n? заполненный целыми числами. Все его элементы кратные трем, записать в одномерный массив.

Массив: найти номера столбцов с положительными элементами и записать их в одномерный массив - C++
ввести двумерный массив I . найти номера столбцов с положительными элементами и записать их в одномерный массив, отобразить его на экране. ...

Переписать произвольный одномерный массив в другой массив в обратном порядке - C++
Помогите написать прогу, вот задание. Переписать произвольный одномерный массив в другой массив в обратном порядке.

Целочисленный массив с размером 4*4 .Написать прогу , формирующую одномерный массив - C++
Целочисленный массив с размером 4*4 .Написать прогу , формирующую одномерный массив. #include <iostream> using namespace std; ...

5
zss
Модератор
Эксперт С++
6580 / 6142 / 2024
Регистрация: 18.12.2011
Сообщений: 16,010
Завершенные тесты: 1
06.02.2012, 12:51 #2
ну, например 1 пункт:
C
1
2
3
4
5
6
7
8
#define n 5
int main()
{
    double a[n]={5.,0,0,1.5,2.};
    int count=0,i;
    for(i=0;i<n;i++)
       if(a[i]==0)count++;
}
остальное - аналогичным способом
0
panicwassano
592 / 560 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
06.02.2012, 13:07 #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
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <cmath>
#include <conio.h>
 
 
using namespace std;
 
 
int main()
{
    const int Len = 8;
    double arr[Len] = {1.4, 8.7, 2.1, 4.6, 1.2, 6.3, 7.1, 4.3};
 
    double min = arr[0];
    int start = 0;
    for (int i = 0; i < Len; ++i)
    {
        if (arr[i] < min)
        {
            double temp = min;
            min = arr[i];
            arr[i] = temp;
            start = i + 1;
        }
    }
 
    double sum = 0;
    for (start; start < Len; ++start)
    {
        sum += arr[start];
    }
 
 
 
    cout << min << ", " << sum << endl;
//  while(!kbhit());
    return EXIT_SUCCESS;
}
0
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
06.02.2012, 13:26 #4
Не увидел, что на си, но раз уж сделал, напишу.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <algorithm>
#include <iterator>
 
int main()
{
   double arr[] = {10, 0, -3, 4, 2.5};
   
   size_t cnt = std::count(arr, arr+sizeof(arr)/sizeof(arr[0]), 0);
   
   std::cout << "count zero: " << cnt << std::endl;
   
   double sum = std::accumulate(std::min_element(arr, arr+sizeof(arr)/sizeof(arr[0]))+1, 
      arr+sizeof(arr)/sizeof(arr[0]), 0.0);
      
   std::cout << "sum after min: " << sum << std::endl;
   
   std::sort(arr, arr+sizeof(arr)/sizeof(arr[0]), [](double val1, double val2){return std::fabs(val1) < std::fabs(val2);});
   
   std::copy(arr, arr+sizeof(arr)/sizeof(arr[0]), std::ostream_iterator<double>(std::cout, " "));   
}
0
Pedro_17
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 50
06.02.2012, 13:29  [ТС] #5
Спасибо народ, что откликнулись, но мне надо на просто C.
0
gooseim
Эксперт С++
508 / 412 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
06.02.2012, 14:51 #6
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
#include <math.h>
#include <stdio.h>
 
int main()
{
   double arr[] = {10, 0, -3, 4, 2.5};
   
   const size_t cnt = sizeof(arr) / sizeof(arr[0]);
   
   size_t i, j;
   
   double count = 0, *min;
   
   for(i=0;i<cnt;i++)
      if(!arr[i]) count++;
      
   printf("count: %f\n", count);
   
   min = arr;
 
   for (i = 0; i < cnt; ++i)
   {
      if (arr[i] < *min)
      {
         min = arr + i;
      }
   }
   
   ++min;
   
   count = 0;
   
   for(;min < arr+cnt; ++min)
      count+=(*min);
      
   printf("sum: %f\n", count);
   
   for (i=0;i<cnt;i++)
    for (j=0; j<cnt-i-1;j++)
        if (fabs(arr[j]) > fabs(arr[j+1])) 
        {
           double tmp = arr[j];
           arr[j] = arr[j+1];
           arr[j+1] = tmp;
        }
   
    for (i=0; i<cnt ; i++)
       printf("%f ", arr[i]);
 
    return 0;
}
0
06.02.2012, 14:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.02.2012, 14:51
Привет! Вот еще темы с ответами:

Дан двумерный массив 3х3. Получить одномерный массив из из отрицательных элементов матрицы. - C++
Пожалуйста, помогите решить простым методом задачку, просто не могу понять смысл ее выполнения. Дан двумерный массив 3х3.Получить...

Создать одномерный массив, заполнить его случайными значениями, отсортировать массив по убыванию - C++
создать одномерный массив, заполнить его случайными значениями, отсортировать массив по убыванию. получилось вот что: #include...

Сформировать одномерный массив, удалить первый элемент с заданным значением, сдвинуть массив циклически - C++
1)сформировать одномерный массив целых чисел 2)удалить первый элемент с заданным значением 3)сдвинуть массив циклически на К элементов...

Организовать одномерный массив с вещественными числами и найти первый и последний отрицательный элемент массив - C++
Организовать одномерный массив с вещественными числами и найти первый и последний отрицательный элемент массива;


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

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

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