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

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

Войти
Регистрация
Восстановить пароль
 
FedVetal
0 / 0 / 0
Регистрация: 29.08.2012
Сообщений: 53
#1

Двомерные масивы - C++

21.11.2012, 02:26. Просмотров 371. Ответов 8
Метки нет (Все метки)

Помогите что не так

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
case 3:{long double b[100][100];
    int z[100];
       cout<<"Введите елементы масива"<<endl;
       for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
    {cin>>b[i][j];
      }
       
        for(int i=0;i<m;i++)
{for(int j=0;j<n;j++)
{cout<<b[i][j];}
        cout<<endl;}}
       double b[100][100];
       int z[100];
       for(int i=0;i<n;i++)
           
       
       {for(int j=0;j<m;j++)
       {z[i]=0;
           if ((b[i][j]<0) &&  ((b[i][j]),2) % 2 == 0) z[i]=z[i] + fabs(b[i][j]);else z[i]=0;}
       }
       for(int i=0;i<n;i++)
           cout<<z[i]<<endl;
      
       
 
}
ето фрагмент програмы в котором ошибка
Именно ета часть должна сумировать все нечетные отрицательные числа столбиков и выводить их на екран

Добавлено через 3 минуты
тоесть оно то віводит чето
а именно -какоето длинное число столько раз сколько у меня столбиков

Добавлено через 3 часа 21 минуту
чуть изменил не помогло
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
[CPP]case 3:{double b[100][100];
    
       cout<<"Введите елементы масива"<<endl;
       for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
    {cin>>b[i][j];
      }
       
        for(int i=0;i<m;i++)
{for(int j=0;j<n;j++)
{cout<<b[i][j];}
        cout<<endl;}}
       double b[100][100];
       int z[100];
       for(int i=0;i<n;i++)
        
       {z[i]=0;
           for(int j=0;j<m;j++)
       
           if ((b[i][j]<0) &&  ((b[i][j]),2) % 2 == 0) z[i]=z[i] + fabs(b[i][j]);else z[i]=z[i]+0;
       }
       for(int i=0;i<n;i++)
           cout<<z[i];
       
      
       
 
}
[/CPP]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2012, 02:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Двомерные масивы (C++):

Масивы - C++
Помогите сделать задачу по С++. Создать массив. Вывести массив в общепринятом виде. Превратить массив, согласно условиям. Вывести...

С++ Масивы - C++
Помогите написать 3 программы по этим заданиям в С++! В одномерном массиве, который состоит из n действительных элементов, вычислить: ...

Масивы - C++
Приветик помогите решить прошку пожалуста У прилавка магазина выстроилась очередь из n покупателей. Время обслуживания i-того...

масивы - C++
сортировки массива методом пузырька и методом прямого включения Програмы нужны в Microsoft visual studio заранье спасибо

Масивы - C++
Здраствуйте! Если есть минутка свободного времени, помогите решить задачу: росположить елементы масива так, что бы сначали ишли елементы...

2-D масивы. - C++
Помогите! Написать программу в С++ которая будет проверять является ли 2-д масив маг.квадратом,у которого сума строк,столбцов и...

8
MrGluck
Модератор
Эксперт CЭксперт С++
7427 / 4542 / 676
Регистрация: 29.11.2010
Сообщений: 12,328
21.11.2012, 02:33 #2
Легче переписать все. Какого задание?
0
FedVetal
0 / 0 / 0
Регистрация: 29.08.2012
Сообщений: 53
21.11.2012, 02:42  [ТС] #3
мне бы розобраться в самой проблеме виводит не суму чисел ,а какое то очень длинное число с минусом спереди

Добавлено через 28 секунд
Все задание оч большое и запутаное
0
Hrundel
26 / 26 / 2
Регистрация: 27.05.2012
Сообщений: 114
21.11.2012, 02:52 #4
Длинное число с минусом является результатом двух возможных причин:

1. overload
2. отсутствие инициализации переменной

Добавлено через 3 минуты
У тебя программа требует введения данных в массив 100 х 100 ВРУЧНУЮ !!! (10.000 операций ввода!!!)
Ты это делаешь?

Если не делаешь - значит нет инициализации и все будет выводиться как "очень длинное число с минусом спереди"
0
MrGluck
21.11.2012, 02:53
  #5

Не по теме:

Только вручную, только хардкор

0
FedVetal
0 / 0 / 0
Регистрация: 29.08.2012
Сообщений: 53
21.11.2012, 02:58  [ТС] #6
а у меня как

1. overload
2. отсутствие инициализации переменной
???

Добавлено через 3 минуты
там не 100*100
ето масив с псевдограницами или как он там правильно называется я в начале задаю n и m соответственно количество столбиков и строк
вот вся пога ток она на стадии розработки там много чего еще не хватает
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#include<iostream>
#include<math.h>
using namespace std;
int main()
{int a,m,n,d,c,e;
 
    setlocale(0,"");
cout<<"Количество столбцов "<<endl;
cin>>n;
cout<<"Количество строк "<<endl;
cin>>m;
cout<<"Заполнить масив как константу жмите 1 "<<endl;
cout<<"Заполнить масив случайными числами жмите 2 "<<endl;
cout<<"Заполнить масив с клавиатуры жмите 3 "<<endl;
cin>>a;
switch(a)
{
case 1:{int b[5][10]={1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5};
for(int i=0;i<m;i++)
{for(int j=0;j<n;j++)
    {cout<<b[i][j];}
cout<<endl;}
for(int i=0;i<m;i++)
break;};
 
 
 
 
 
 
 
 
 
 
 
 
case 2:{cout<<"Введите минимальнльное случайное значение в масиве"<<endl;
    cin>>d;
    cout<<"Введите максимальное случайное значение в масиве"<<endl;
    cin>>c;
    e=c-d+1;
    int b[100][100];
for(int i=0;i<m;i++)
{for(int j=0;j<n;j++)
    { b[i][j] = rand() % e +c ; 
    cout << b[i][j]<<" ";}
cout<<endl;}};break;
 
 
 
 
 
 
 
 
 
 
 
 
 
case 3:{double b[100][100];
    
       cout<<"Введите елементы масива"<<endl;
       for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
    {cin>>b[i][j];
      }
       
        for(int i=0;i<m;i++)
{for(int j=0;j<n;j++)
{cout<<b[i][j];}
        cout<<endl;}}
       double b[100][100];
       int z[100];
       for(int i=0;i<n;i++)
        
       {z[i]=0;
           for(int j=0;j<m;j++)
       
           if ((b[i][j]<0) &&  ((b[i][j]),2) % 2 == 0) z[i]=z[i] + fabs(b[i][j]);else z[i]=z[i]+0;
       }
       for(int i=0;i<n;i++)
           cout<<z[i];
       
      
       
 
}
 
cout<<endl;
 
 
return 0;}
0
Hrundel
26 / 26 / 2
Регистрация: 27.05.2012
Сообщений: 114
21.11.2012, 03:10 #7
У тебя отсутствие инициализации переменной

Добавлено через 2 минуты
Вот эта муть "long double b[100][100];" в твоем коде называется массив 100 х 100
Что равно 10.000 полей.

Добавлено через 8 минут
А вот эта муть в твоем коде -

C++
1
2
3
4
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
    {cin>>b[i][j];
      }
это обход массива по полям и столбцам от (0,0) до (m, n) с запросом ввода данных с клавиатуры.

В случае если m и n не инициализированы, обходит проводится по всем 10.000 полям и туда сохраняется минимальное значение типа long double, которое ты и видишь на экране.
0
FedVetal
0 / 0 / 0
Регистрация: 29.08.2012
Сообщений: 53
21.11.2012, 03:27  [ТС] #8
лан как заменить b[100][100] на b[переменная ][переменная которая задается с клавы]
+ми вчили масиви з псевдозмынними межами я их и использовал в цыкле я же ограничиваю введение или я не правильно чето понял

Добавлено через 1 минуту
так m и n я ввожу с клавы в начале програмы

Добавлено через 15 минут
Ладно я спать пжл предлагайте свои варианты решения пробл
0
ps10n1ck
54 / 48 / 2
Регистрация: 10.11.2010
Сообщений: 132
21.11.2012, 04:35 #9
копай в сторону двумерный динамический массив c++ и будет тебе счастье.., а то, что у тебя, как уже выше было написано работает неправильно..
0
21.11.2012, 04:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2012, 04:35
Привет! Вот еще темы с ответами:

Масивы - C++
В квадратном массиве заданы целые числа. Определить количество элементов главной диагонали. только пожалуйста сделайте так как для...

C++ масивы - C++
Начал решать задачу, вот условие: Дан целочисленный массив размера N. Удалить из массива все элементы, встречающиеся ровно два раза, и...

Масивы С/С++ - C++
Подскажите пожалуйста, как в С создать массив А, при этом что бы выполнялась программа без ошибок. Потому что компиляция происходит...

Одномерные масивы - C++
Дан массив из н элементов , создать программу которая выводит на экран все одинаковые элементы. Помогите где ошибка ? ... спс заранее ...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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