Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2010, 00:52   #1
андрей е.
Новичок
Джуниор
 
Регистрация: 19.04.2010
Сообщений: 1
По умолчанию МАССИВ.НАЙТИ СУММУ ОТРИЦАТ.ЭЛЕМЕНТОВ

Всем доброго времени суток!
Оч.требуется грамотный совет
Цитата:
#include<iostream.h>
#include<iomanip.h>

void input(float [5][5],char);
void schetsum(float [5][5],float *);
void schetkol(float [5][5],float *);
void output(float [5][5], char, float, float);

void main()
{
float a[5][5],b[5][5], sumA,sumB,kolA,kolB;

input(a,'a');
input(b,'b');
schetsum(a,&sumA);
schetsum(b,&sumB);
schetkol(a,&kolA);
schetkol(b,&kolB);
output(a,'a',sumA,kolA);
output(b,'b',sumB,kolB);
}
void input(float m[5][5],char name)
{
int i,j;
cout<<"Вводим массив "<<name<<endl;
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
cout<<"Введите "<<name<<"["<<i<<"]["<<j<<"]=";
cin>>m[i][j];
}
}

void schetsum(float m[5][5],float *sum)
{
int i,j;
*sum=0;
for(j=0;j<5;j=j+2)
for(i=0;i<5;i++)
if(m[i][j]>0)
*sum+=m[i][j];
}

void schetkol(float n[5][5], float *kol)
{
int i,j;
*kol=0;
for(j=0;j<5;j=j+2)
for(i=0;i<5;i++)
if(n[i][j]>0)
(*kol)++;
}
void output(float m[5][5],char name, float sum,float kol)
{
int i,j;
cout<<"Исходный массив "<<name<<":"<<endl;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
cout<<setw(5)<< m[i][j];
cout<<endl;
}
cout<<"\nСумма отрицательных элементов в интервале от - 5 до +5 "<<name<<" равна "<<sum<<endl;
cout<<"количество отрицательных элементов в интервале от -5 до +5. "<<name<<" равна "<<kol<<endl;
}
задача:
Определить сумму отрицательных элементов, количество элементов в интервале от -5 до +5.

Дайте пжл какой нибудь намек иль подсказку че не то делаю...
Заранее спасибо!
андрей е. вне форума Ответить с цитированием
Старый 19.04.2010, 01:00   #2
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

сумма отриц. эл-ов и кол-во эл-ов в интервале от -5 до 5
Код:
int a[5][5];   // уже заполнен
int sum = 0, count = 0; // сумма и счетчик элментов в инт. -5...5
for(int i=0; i<5; i++) {
    for(int j=0; j<5; j++) {
        if( a[i][j] < 0 ) sum += a[i][j]; // если отриц. добавляем к сумме
        if( a[i][j] >= -5 && a[i][j] < 5) count++; // если находится в интервале от -5 до 5 увеличиваем счетчик
    }
}
жестко ты намудрил у себя...не стал читать всё

Последний раз редактировалось NiCola999; 19.04.2010 в 01:06.
NiCola999 вне форума Ответить с цитированием
Старый 19.04.2010, 14:44   #3
romec1
Пользователь
 
Регистрация: 04.02.2010
Сообщений: 50
По умолчанию

сумма=0
//твои циклы фор для прохождения по всему массиву
if (mas[i][j]>=-5 && mas[i][j]<=5)
{
//сумма+=mas[i][j];
}

и почему бы не сделать динамический массив? почему именно 5Х5?
намек на то что не правильно, ты суммируешь только отрицательные числа
Я не волшебник.. я только учусь

Последний раз редактировалось romec1; 19.04.2010 в 16:53.
romec1 вне форума Ответить с цитированием
Старый 19.04.2010, 14:47   #4
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

пишетьса вот так #include<iostream>

а не так #include<iostream.h>


I am KOSS ЦЗЮ!
KOSS.AB вне форума Ответить с цитированием
Старый 19.04.2010, 14:48   #5
romec1
Пользователь
 
Регистрация: 04.02.2010
Сообщений: 50
По умолчанию

Цитата:
Сообщение от KOSS.AB Посмотреть сообщение
пишетьса вот так #include<iostream>

а не так #include<iostream.h>


Это еще почему??? откуда ты знаешь в какой среде он работает??
Не все же на вижуале пишут....
Я не волшебник.. я только учусь
romec1 вне форума Ответить с цитированием
Старый 19.04.2010, 14:52   #6
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

а ты проверь прогу на компиляцию, он тебе напишит типа не найдена библиотека iostream.h
I am KOSS ЦЗЮ!
KOSS.AB вне форума Ответить с цитированием
Старый 19.04.2010, 14:53   #7
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

и вот это тоже не правильно #include<iomanip.h> , но сам не знаю как правильно
I am KOSS ЦЗЮ!
KOSS.AB вне форума Ответить с цитированием
Старый 19.04.2010, 15:16   #8
Vago
Форумчанин
 
Регистрация: 15.01.2010
Сообщений: 948
По умолчанию

Цитата:
Сообщение от KOSS.AB Посмотреть сообщение
а ты проверь прогу на компиляцию, он тебе напишит типа не найдена библиотека iostream.h
Хоть и не ко мне обращались, проверил. В Visual Studio 6. Всё нормально.
Цитата:
Сообщение от KOSS.AB
и вот это тоже не правильно #include<iomanip.h>
И это проверил. Там же. Тоже всё нормально.
Vago вне форума Ответить с цитированием
Старый 19.04.2010, 15:22   #9
KOSS.AB
Пользователь
 
Регистрация: 17.04.2010
Сообщений: 47
По умолчанию

странно, а у меня microsoft Visual Studio 2008 и просто не робит
I am KOSS ЦЗЮ!
KOSS.AB вне форума Ответить с цитированием
Старый 19.04.2010, 15:39   #10
romec1
Пользователь
 
Регистрация: 04.02.2010
Сообщений: 50
По умолчанию

=))) оно на вижуале и не должно запуститься с теми библиотеками, он скорее всего в борланде пишет ребята, он спрашивает как ему найти сумму и количество отрицательных элементов, а не какие библиотеки ему подключать=))))
Я не волшебник.. я только учусь

Последний раз редактировалось romec1; 19.04.2010 в 15:45.
romec1 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
паскаль.найти сумму парных элементов. belka1 Помощь студентам 3 14.11.2009 22:37
Найти максимальный из положительных элементов матрицы и сумму отрицательных элементов. bessonov12 Microsoft Office Excel 7 04.05.2009 05:44
найти сумму элементов строки jenja Общие вопросы Delphi 2 02.04.2008 17:49