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

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

Восстановить пароль Регистрация
 
Маринчик
 Аватар для Маринчик
0 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 123
29.11.2012, 00:04     Подскажите пожалуйста, как правильно вывести,сформировать массив из задания #1
Дан массив С из 16 элементов.Нужно:проинициализировать массив С, вывод промежуточных данных и массивов на экран.
а) Сформировать массив D, в который включить элементы массива С, большие его среднего значения Cs. Определить k – количество элементов массива D и R – разность между max и min элементами.
б) Сформировать матрицу А размером k 5, в которой Aij = i*Di + j*Cj. Определить S-сумму положительных элементов
матрицы А.


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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
 
int main()
{   
  int n=16,i,j,k=0;
  float c[16]={1,-2.7,3,4.3,5,6.2,-7.5,8.2,9,0,1.1,12,0.3,1,-15,1.6};
  float s=0,m,min,max,R,p=0,Cs;
  float d[10], a[0][5];
  
  printf("massiv C:");/*vivodim massiv c*/
  for(j=0; j<n; j++)
  printf("%.1f ",c[j]);
  for(j=0; j<n; j++)
  {s=s+c[j];/*summa vsex elementov*/
  Cs=s/n;/*srednee znachenie vsex elementov massiva c*/
  }
  printf("\n\nsrednee znachenie vsex elementov massiva c=%.1f",Cs);
  for(j=0; j<n; j++)
  if (c[j]>Cs) k++; /* kolichestvo elementov massiva D*/
  printf("\n\nkolichestvo elementov massiva D:%d massiv D:",k);
    
 
 
 
 
 for(i=0; i<k; i++)
  for(j=0; j<n; j++)
  if (c[j]>Cs)
  d[i]=c[j];
   for(i=0; i<k; i++)
  for(j=0; j<n; j++)
    printf("%.1f ",d[i]);
  
 
 
 
 
 
  
 min=d[0];
  for(i=0; i<k; i++)
  if (d[i]<min)  min=d[i];
  printf("\n\nminimal'nij element massiva d=%.1f",min);
   max=d[0];
  for(i=0; i<k; i++)
  if (d[i]>max) max=d[i];
  printf("\n\nmaksimal'nij element massiva d=%.1f",max);
  for(i=0; i<k; i++)
  R=max-min;
  printf("\n\nraznost' me*dy max i min elementami massiva D:%.1f",R);
  for(i=0; i<k; i++)
  for(j=0; j<5; j++)
  a[i][j]=i*d[i]+j*c[j];
  printf("\n\nmassiv A:\n");
  for(i=0; i<k; i++)
  {printf("\n");
  for(j=0; j<5; j++)
  printf("%.1f ",a[i][j]);
  }
  for(i=0; i<k; i++)
  for(j=0; j<5; j++)
  if (a[i][j]>0) p+=a[i][j];
  printf("\n\nsumma polo*itei'nix elementov matrici A:%.2f",p);
  printf("\n");
  system("pause");
return 0;
}
Не могу понять, как правильно вывести массив D в той части что я выделила.При той записи которую сделала я все время выводится одно и тоже число- самое большое из массива - 12.Подскажите пожалуйста, как правильно вывести,сформировать этот массив ??
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2012, 00:04     Подскажите пожалуйста, как правильно вывести,сформировать массив из задания
Посмотрите здесь:

C++ Подскажите пожалуйста как правильно расспечатать
Подскажите, пожалуйста, как правильно объявить динамически расширяемую строку? C++
Как правильно, с помощью функций сформировать массив, в чем ошибка? C++
Подскажите, пожалуйста, как ввести массив из текстового файла. C++
Подскажите пожалуйста как разбить строку на массив слов? C++
C++ Подскажите, пожалуйста, как вывести на экран двумерный массив
C++ Подскажите пожалуйста как заполнить весь массив структур структурой p1
Как вывести на экран весь вектор? Пожалуйста, подскажите C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
29.11.2012, 03:08     Подскажите пожалуйста, как правильно вывести,сформировать массив из задания #2
Цитата Сообщение от Маринчик Посмотреть сообщение
Не могу понять, как правильно вывести массив D в той части что я выделила.
Сформировать массив d[] (задать значения его элементам), можно так:
Цитата Сообщение от Маринчик Посмотреть сообщение
C
1
2
for(j=0; j<n; j++)
 if (c[j]>Cs) k++; /* kolichestvo elementov massiva D*/
замените на:
C
1
2
for(j=0; j<n; j++)
 if (c[j]>Cs) d[k++]=c[j]; /* kolichestvo elementov massiva D*/
только размер массива d[] сделайте не 10, а таким же как и размер массива c[]
Yandex
Объявления
29.11.2012, 03:08     Подскажите пожалуйста, как правильно вывести,сформировать массив из задания
Ответ Создать тему
Опции темы

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