Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 18.01.2010
Сообщений: 9

Небольшая праблемка

18.01.2010, 22:31. Показов 1176. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.

Есть такая задача: Дана матрица N строк, М столбцов. Вычислить сумму элементов каждой строки до первого отрицательного.

Продвинулся до того чтобы суммировались элементы строк матрицы. Подскажите пожалуста как добиться того чтобы элементы матрицы считались до первого отрицательного?

вот текст программы
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
     
#include <conio.h>
#include <windows.h>
#include <stdio.h>
 
int main()
{ SetConsoleCP(1251);
SetConsoleOutputCP(1251);
randomize();
int q,i,j,n,m,a[50][50],pervotr=0, pervo=0; float b[50];
 
printf("\nВведите количество строк N "); scanf("%d", &n);
printf("\nВведите количество столбцов M "); scanf("%d", &m);
printf("\n");
for(i=0; i < n ; i++){
for(j=0; j < m ; j++){
a[i][j]=random(11)-5;
printf("%3d",a[i][j]);
}printf("\n");}
 
for(j=0; j < m ; j++){
for(i=0; i < n ; i++){
b[i]+=a[i][j];} }
 
printf("\n");
  for(i=0;i<n;i++)printf("%3.3f",b[i]);
 getch();}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.01.2010, 22:31
Ответы с готовыми решениями:

Небольшая проблемка)
Всем доброго времени суток, у меня возникла проблема с напиванием одной программы задание следующее :&quot;Написать функцию нахождения MAX...

Небольшая сложность
Я создал проект, сохранил, попытался открыть, но на месте отладки появилось &quot;присоединить&quot;, при нажатии которого выдаёт окошко с кучей...

Небольшая программка на С++
Люди, нужно сделать небольшую программку на C++, помогите пожалуйста. Постановка задачи на фото.

10
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
18.01.2010, 22:33
строчку b[i]+=a[i][j];} } замени на такие:

if (a[i][j] < 0) goto get_out;
b[i]+=a[i][j];} }

get_out:;
1
1 / 1 / 0
Регистрация: 18.01.2010
Сообщений: 9
18.01.2010, 22:45  [ТС]
Вроди чёта начало работать, но если задать количество строк/столбцов более двух то даже если например есть положительные значения в 3 строке то они несчитаются
Миниатюры
Небольшая праблемка  
0
 Аватар для ggmann
21 / 21 / 7
Регистрация: 06.10.2008
Сообщений: 173
18.01.2010, 22:53
может так попробуй

while(a[i][j]>0) {
//суммрование
}

Добавлено через 1 минуту
тебе нужно просуммировать все положительные елементы в строке или только до отрицательного?
1
1 / 1 / 0
Регистрация: 18.01.2010
Сообщений: 9
18.01.2010, 23:00  [ТС]
только до отрицательного что после первого отрицательно посути неважно.

и так в каждой строке
0
 Аватар для ggmann
21 / 21 / 7
Регистрация: 06.10.2008
Сообщений: 173
18.01.2010, 23:54
C++
1
2
3
4
5
6
7
8
for(i=0; i < n ; i++){
    for(j=0; j < n ; j++){           
       if(a[i][j]>0){
             b[i]+=a[i][j];
       }
       else {break;}   
    }
   }
вот тебе сумм

Добавлено через 37 секунд
проверь =) если что не так извини, я проколупался со своим рендомом)
1
1 / 1 / 0
Регистрация: 18.01.2010
Сообщений: 9
19.01.2010, 00:05  [ТС]
2ggmann еслиб можно было нажать 1+ на кнопку спасибо сделал бы это!))

программа заработала так как надо единственный штрх добавил тут

if(a[i][j]>=0){
а то если 1 элемент в строке 0 то дальше он и нестарался даже считать.

ещё раз огромное спасибо.
0
 Аватар для ggmann
21 / 21 / 7
Регистрация: 06.10.2008
Сообщений: 173
19.01.2010, 00:09
всегда рад помочь)
0
1 / 1 / 0
Регистрация: 18.01.2010
Сообщений: 9
19.01.2010, 00:42  [ТС]
А вот ещё 1 вопрос, как можно решить эту задачу, вводя исходные данные из текстового файла, результат выводить тоже в текстовый файл.
Подскажите пожалуста если кто догадается как это сделать.

Исходные данные это N и M (cтроки и столбцы)... всё что пока нашол в литературе это ввод целых массивов...
0
Day
 Аватар для Day
1180 / 990 / 83
Регистрация: 29.10.2009
Сообщений: 1,385
19.01.2010, 01:00
Открой файл
FILE *f = fopen(имя файла, "r");
убери printf
вместо scanf - fscanf(f, "%d", &N)
..............
Не забудь файл закрыть - fclose(f);
1
1 / 1 / 0
Регистрация: 18.01.2010
Сообщений: 9
19.01.2010, 10:04  [ТС]
билдер сильно ругал
fscanf(f, "%d", &N)
а если неругает и запускается файл нечитает... буду эксперементировать))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.01.2010, 10:04
Помогаю со студенческими работами здесь

Небольшая помощь
Ктото может написать небольшой модуль которий будет считивать какуюта інформацию с файла *тхт каждих 2 сек ?? спс

небольшая функция на c++
Необходимо создать функцию,которая меняет элементы массива по логике первый с последним,второй с предпоследним и т.д. начиная с середины...

Небольшая задачка
Доброго времени суток. Я не знал в каком разделе создавать эту тему, так что пишу сюда. Есть небольшая проблема не получается решить...

Небольшая недоработка в программе
Задача была написать программу, которая читает введенную матрицу, делает проверку значений на четность и положительность. Если условия...

Небольшая ошибка в программе
Я полный новичок в c++, написал программу, которая проверяет, какое число больше, первое, или второе. #include &lt;iostream&gt; ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru