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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Igorek94
2 / 2 / 0
Регистрация: 30.10.2012
Сообщений: 45
#1

исправьте ошибки в коде - C++

27.11.2012, 14:42. Просмотров 295. Ответов 3
Метки нет (Все метки)

посмотрите пожалуйста что не так с кодом?
вот задание:Дана целочисленная квадратная матрица. Определить:
• количество строк, не содержащих ни одного нулевого элемента;
• максимальное из чисел, встречающихся в заданной матрице более одного раза.

#include <iostream>
#include <stdlib.h>
using namespace std;


int main()
{
int N;
cin >> N; // Размер матрицы
int a[N][N];
for (int i=0;i<N;i++)
for (int j=0;j<N;j++)
cin >> a[i][j];
int max=0;
for (int i=0;i<N;i++)
for (int j=0;j<N;j++)
if (a[i][j]>max)
{
int ti=i,tj=j;
for (int k=0;k<N;k++)
for (int l=0;l<N;l++)
if ((a[i][j]==a[k][l])&&!((ti==k)&&(tj==l)))
{
max=a[i][j];
break;
}
}
int res=0;
for (int i=0;i<N;i++)
{
bool f1=false;
for (int j=0;j<N;j++)
if (a[i][j]==0)
f1=true;
if (!f1) res++;
}
cout << max <<' '<<res;
system("payse");
return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2012, 14:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос исправьте ошибки в коде (C++):

исправьте ошибки в коде - C++
1. В одномерном массиве, состоящем из n вещественных элементов, вычислить: • сумму отрицательных элементов массива; • упорядочить...

исправьте ошибки в коде - C++
я понимаю что написал код не правильно исправьте пожалуйста #include &lt;conio.h&gt; #include &lt;math.h&gt; #include &lt;iostream&gt; using...

Исправьте ошибки в коде - C++
#include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;locale.h&gt; int main() { float a,b,c,x; float result;

Исправьте,пожалуйста, ошибки в коде :) - C++
Не пойму почему всё горит красным. Я не подключил библиотеку какую-то?Если нет,то в чём ошибке? Исправьте,пожалуйста. Спасибо! ...

Исправьте мне ошибки в коде - C++
Привет всем... посмотрите пожалуйста правильно я написал программу? Пример 1. #include &lt;cstdlib&gt; #include &lt;iostream&gt; #include...

Исправьте ошибки - C++
Ошибка не объявлена __MessageBoxA , chTitle , hProcess #define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;Windows.h&gt;...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
kuli4ok
31 / 31 / 3
Регистрация: 10.10.2012
Сообщений: 88
27.11.2012, 14:47 #2
C++
1
2
3
int N;
 cin >> N; // Размер матрицы
 int a[N][N];
Так массив создавать нельзя.
Если динамический, то так:
C++
1
2
3
4
5
6
7
8
int N
cin >> N;
int **a;
a = new int*[N];
for(int i=0; i<N; i++)
{
    a[i] = new int[N]
}
И удалять его надо так:

C++
1
2
3
4
5
for(int i=0; i<n; i++)
{
    delete [] a[i];
}
delete [] a;
0
Igorek94
2 / 2 / 0
Регистрация: 30.10.2012
Сообщений: 45
27.11.2012, 14:49  [ТС] #3
Цитата Сообщение от kuli4ok Посмотреть сообщение
C++
1
2
3
int N;
 cin >> N; // Размер матрицы
 int a[N][N];
Так массив создавать нельзя.
Если динамический, то так:
C++
1
2
3
4
5
6
7
8
int N
cin >> N;
int **a;
a = new int*[N];
for(int i=0; i<N; i++)
{
    a[i] = new int[N]
}
И удалять его надо так:

C++
1
2
3
4
5
for(int i=0; i<n; i++)
{
    delete [] a[i];
}
delete [] a;
а можите внести свои изминения в мой код? ото я не знаю куда вставлять
0
kuli4ok
31 / 31 / 3
Регистрация: 10.10.2012
Сообщений: 88
27.11.2012, 14:55 #4
Я не проверял весь код, я просто увидел явную ошибку.
Но если просто вставить, то так:
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
#include <iostream>
 #include <stdlib.h>
 using namespace std;
 
 
 int main()
 {
int N
cin >> N;
int **a;
a = new int*[N];
for(int i=0; i<N; i++)
{
    a[i] = new int[N]
}
 for (int i=0;i<N;i++)
 for (int j=0;j<N;j++)
 cin >> a[i][j];
 int max=0;
 for (int i=0;i<N;i++)
 for (int j=0;j<N;j++)
 if (a[i][j]>max)
 {
 int ti=i,tj=j;
 for (int k=0;k<N;k++)
 for (int l=0;l<N;l++)
 if ((a[i][j]==a[k][l])&&!((ti==k)&&(tj==l)))
 {
 max=a[i][j];
 break;
 }
 }
 int res=0;
 for (int i=0;i<N;i++)
 {
 bool f1=false;
 for (int j=0;j<N;j++)
 if (a[i][j]==0)
 f1=true;
 if (!f1) res++;
 }
 cout << max <<' '<<res;
 for(int i=0; i<n; i++)
 {
    delete [] a[i];
 }
delete [] a;
 return 0;
 }
Но опять же, возможны и другие ошибки.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2012, 14:55
Привет! Вот еще темы с ответами:

исправьте ошибки - C++
Задание прикрепил, 1 вариант. Вот такой код набрал, как описывает задание, но выдает ошибки, что делать не понимаю. ...

Исправьте ошибки - C++
На 10, 12, 16, 18 строках K, p, N, K соответственно, выдаёт was not declared in this scope. Помогите исправить. #include &lt;iostream&gt; ...

Исправьте ошибки - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; void main () { int N,M; int min=0, i, j;//переменные для цикла ...

Исправьте мне ошибки! - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; #include &lt;windows.h&gt; #include &lt;iomanip&gt; #include &lt;math.h&gt; using...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
27.11.2012, 14:55
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru