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

Найти ошибку в программе - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ “Крестики-нолики” http://www.cyberforum.ru/cpp-beginners/thread697097.html
Напишите игру “Крестики-нолики”. Программа выводит игровое поле для двух игроков, проверяет правильность ходов, следит за ситуацией на поле, и выводит победителя. Программа играет с человеком, выполняя самые выгодные ходы ориентируясь по ситуации на поле. В начале предлагается выбрать – играть с человеком, или с компьютером. В конце игры программа предлагает сыграть ещё раз.
C++ Среди элементов ниже главной диагонали отобрать те, которые превышают максимум второго столбца матрицы как среди эллементов лежащих ниже главной диагонали отобрать те которые превышают максимум второго столбца матрицы #include<iostream> #include <cstdlib> using namespace std; int main () { const int n =5;//столбцы n=5 строки n= 5 int matr;// матрица nxn for(int i=0; i<n; i++)//цикл для заданий элементов матрицы // for(int j=0; j<m; j++)//цикл для задания элементов матрицы http://www.cyberforum.ru/cpp-beginners/thread697082.html
Библиотека <ncursesw/ncurses.h> C++
где и что я могу скачать , что моя программа, в которой присутсвует данная библиотека #include <ncursesw/ncurses.h> скомпилировалась? (для dev c++) Добавлено через 19 минут п.с. простите, как не по русски написала:DD
r6010 - abort() windows service C++
Народ всем привет! Трабл такого плана: 1 написал программу, отладил и т.п. 2 написал службу под win и добавил туда мою отлаженную программу №1 в консоли регистрирую мою службу в MSG все норм. Но при выполнении службы происходит ошибка переполнения стека (r6010 - abort())! Причем каждый божий раз при вызове! Подскажите куда рыть? Блин комичу код службы запускаю только функционал все...
C++ Заданные три действительных числа. Выбрать из них те, которые принадлежат промежутку (2,5) http://www.cyberforum.ru/cpp-beginners/thread697076.html
Заданные три действительных числа. Выбрать из них те, которые принадлежат промежутку (2,5). Помогите пожалуйста
C++ Выводит крокозяблы при подсчёте ряда Тейлора #include<iostream.h> #include<math.h> #include<windows.h> long double fact(int N) { if(N < 0) return 0; if (N == 0) return 1; подробнее

Показать сообщение отдельно
TopLoader
 Аватар для TopLoader
41 / 41 / 4
Регистрация: 10.12.2011
Сообщений: 128
14.11.2012, 03:20     Найти ошибку в программе
Решаю задачу:
В метании молота состязается n спортcменов. Каждый из них сделал m бросков.
Если перенумеровать спортсменов числами от 0 до n-1, а попытки каждого из них – от 0 до m-1, то на вход программа получает массив int A[n][m], состоящий из неотрицательных чисел.
Будем считать, что побеждает спортсмен, у которого максимален наилучший бросок. Если таких несколько, то из них побеждает тот, у которого наилучшая сумма результатов по всем попыткам. Если и таких несколько, победителем считается спортсмен с минимальным номером. Определите номер победителя соревнований.
Тест:
Вход
4 3
8 8 8
5 9 3
9 4 7
6 6 2

Выход:
2
Вот мой код:
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
#include <iostream>
#include <windows.h>
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    setlocale(LC_ALL, "Russian");
 
    int n, m;
    int i, j;
    int max = 0;
    int sum;
    int maxSum = 0;
  int maxSumRow;
    int k;
    bool maxElementInRow;
 
    cout << "n>";
    cin >> n;
    cout << "m>";
    cin >> m;
 
    int a[n][m];
 
    // Чтение массива
    for(i=0; i<n; i++)
    for(j=0; j<m; j++)
      cin >> a[i][j];
  // Ищем
  for(i=0; i<n; i++) {
    maxElementInRow = false;
    sum = 0;  // сумма в строке = 0
    for(j=0; j<m; j++) {
      sum += a[i][j]; // считаем сумму
      if(a[i][j] > max) {
        max = a[i][j];
        k = i;
      } else if(a[i][j]==max)
          maxElementInRow = true;
    }
    if(maxElementInRow) {   // если в строке есть элемент, равный максимуму
        if(sum > maxSum) {
          maxSum = sum;
          k = i;
        }
      }
  }
 
  cout << "\n" << k << "\n";
 
    return 0;
}
Но он работает неправильно, не могу понять, что я не учитываю
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru