Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > C/C++/С#


Ответ
 
Опции темы Опции просмотра
Старый 27.09.2011, 20:33   #1 (permalink)
SHishkin
Новичок
 
Регистрация: 27.09.2011
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Нужна помощь в написании программы C++

Дана матрица (10х15).
Найти среднее значение отрицательных элементов, учитывая
только столбцы, где отрицательных элементов не более 10.
SHishkin вне форума   Ответить с цитированием

Старый 27.09.2011, 20:33
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Похожие обсуждения помогут вам решить эту проблему

Нужна помощь написании программы-календаря
Требуется помощь в написании программы на языке Turbo Pascal
Нужна помощь по блок-схеме и в отладке программы
Массивы. Нужна помощь в доработке программы.
Нужна помощь в написании программы на С

Старый 03.11.2011, 16:18   #2 (permalink)
Просто_лис
Новичок
 
Регистрация: 03.11.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Эх это же просто.... только учись.
Код:
#include <iostream>
using namespace std;
int main()
{
int masiv[9][14];
int i,j;
double tmin=0,kmin=0;
char kolvo=0;
for (i=0; i<=9; i++)
{
for (j=0; j<=14; j++)
{
cin>>masiv[i][j];
}
cout<<"\n";
}
for (i=0; i<=9; i++)
{
for (j=0; j<=14; j++)
{
cout<<masiv[i][j]<<" ";
}
cout<<"\n";
}
for (i=0; i<=9; i++)
{
kolvo=0; 
tmin=0;
for (j=0; j<=14; j++)
{
if (masiv[i][j]<0)
{
tmin=tmin+masiv[i][j]; 
kolvo++;
}
}
if ((kolvo<=10) and (kolvo>0))
kmin=kmin+(tmin/10);
}
cout<<"Crednee = "<<kmin<<"\n";
system("pause");
return 0;
}
Просто_лис вне форума   Ответить с цитированием
Старый 04.11.2011, 16:45   #3 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

И словит эта программа SEGFAULT при первом же пуске.
Long Cat вне форума   Ответить с цитированием
Старый 04.11.2011, 18:14   #4 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Long Cat Посмотреть сообщение
И словит эта программа SEGFAULT при первом же пуске.
А поправить можете?
Vladimir_S вне форума   Ответить с цитированием
Старый 05.11.2011, 01:11   #5 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

int massiv[9][14]<=>massiv:array [0..8,0..13] of integer;
Long Cat вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 05.11.2011, 05:17   #6 (permalink)
Просто_лис
Новичок
 
Регистрация: 03.11.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Вот немного исправленная и подправленная.
Код:
#include <iostream>
using namespace std;
int main()
{
int masiv[9][14];
int i,j;
double tmin=0,kmin=0;
char kolvo=0,KOLVO=0;
for (i=0; i<=9; i++)
{
for (j=0; j<=14; j++)
{
cin>>masiv[i][j];
}
cout<<"\n";
}
system("cls");
for (i=0; i<=9; i++)
{
for (j=0; j<=14; j++)
{
cout<<masiv[i][j]<<" ";
}
cout<<"\n";
}
for (i=0; i<=9; i++)
{
kolvo=0; 
tmin=0;
for (j=0; j<=14; j++)
{
if (masiv[i][j]<0)
{
tmin=tmin+masiv[i][j]; 
kolvo++;
KOLVO++;
}
}
if ((kolvo<=10) and (kolvo>=1))
kmin=kmin+tmin;
else KOLVO-=kolvo;
}
cout<<"Crednee = "<<kmin/KOLVO<<"\n";
system("pause");
return 0;
}
Снизу снимок программы.
Миниатюры
nieiie.jpg  
Просто_лис вне форума   Ответить с цитированием
Старый 05.11.2011, 05:19   #7 (permalink)
Просто_лис
Новичок
 
Регистрация: 03.11.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от Long Cat Посмотреть сообщение
int massiv[9][14]<=>massiv:array [0..8,0..13] of integer;
massiv:array [0..8,0..13] of integer; - это в Pascal
int massiv[9][14] - это в C++,C,C#
Просто_лис вне форума   Ответить с цитированием
Старый 05.11.2011, 06:29   #8 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

Ошибка осталась на месте. Ну нету у вас в массиве 9 строки и 14 столба, я специально привел эквивалентную запись массива на паскале.
Цитата:
Сообщение от Просто_лис Посмотреть сообщение
char kolvo=0,KOLVO=0
Это-ужасно.
Цитата:
Сообщение от Просто_лис Посмотреть сообщение
system("cls");
Это-тоже ужасно. Есть <conio.h> и clrscr для этой цели.
Цитата:
Сообщение от Просто_лис Посмотреть сообщение
system("pause");
а для этой-getch();
Long Cat вне форума   Ответить с цитированием
Старый 05.11.2011, 10:29   #9 (permalink)
Просто_лис
Новичок
 
Регистрация: 03.11.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Long Cat, напишите свою программу если моя вам кажется ужасной.
Просто_лис вне форума   Ответить с цитированием
Старый 05.11.2011, 12:48   #10 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

Я ни в коем случае не хочу вас обидеть. Из вашей программы получится верная, при условии исправления границ работы циклов, чтобы они не убегали за массив, и устранения совершенно неуместных вызовов system().
Long Cat вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 05:30.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.