Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.10.2009, 12:25   #1
blackslayer
 
Регистрация: 28.09.2009
Сообщений: 4
По умолчанию Количество нулевых элементов

Вообщем мне нужно написать программу,которая подсчитывает колличество нулевых элементов в двухмерном массиве,как модификация возможен подсчет строк и(или) столбцов с хотябы одним нулевым элементом.
Сначала я писал программу по подсчету отрицательных элементов у меня все получилось с таким кодом:


Код:
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <conio.h>
using namespace std;


int main()
{
	const int row=2;
	const int col=3;
	int mas[row] [col];
	int i,j;
	for(i=0; i<row; i++)
		for(j=0; j<col; j++)
			cin>>mas[i] [j];
	for(i=0; i<row; i++)
	{
		for(j=col; j<col; i++)
			cout<<setw(4)<<mas[i] [j]<<" ";
		cout<<endl;
	}
	int otr=0;
	for(i=0; i<row; i++)
	for(j=0; j<col; j++)
	
		if(mas[i] [j]<0)
			otr=otr++;
	
	cout<<"otr="<<otr;
		cout<<endl;
	
    getch();
	return 0;
}
Я модифицировав его заменив <0 на =0

Код:
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <conio.h>
using namespace std;


int main()
{
	const int row=2;
	const int col=3;
	int mas[row] [col];
	int i,j;
	for(i=0; i<row; i++)
		for(j=0; j<col; j++)
			cin>>mas[i] [j];
	for(i=0; i<row; i++)
	{
		for(j=col; j<col; i++)
			cout<<setw(4)<<mas[i] [j]<<" ";
		cout<<endl;
	}
	int kol=0;
	for(i=0; i<row; i++)
	for(j=0; j<col; j++)
	
		if(mas[i] [j]=0)
			kol=kol++;
	
	cout<<"kol="<<kol;
		cout<<endl;
	
    getch();
	return 0;
}
Но программа почему-то выдает результат 0 даже есоли все элементы нулевые.
Подскажите пожалуйста в чем тут ошибка,и как можно исправить.
Заранее спасибо!

P.S. Сорри в названии темы опечатка не "сумма", а колличество.

Последний раз редактировалось Sazary; 17.10.2009 в 18:00.
blackslayer вне форума Ответить с цитированием
Старый 17.10.2009, 12:32   #2
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

Напишите просто так kol++;

Последний раз редактировалось profi; 17.10.2009 в 16:37.
profi вне форума Ответить с цитированием
Старый 17.10.2009, 15:03   #3
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

И, самое главное, = - это оператор присваивания, а оператор сравнения ==. Т.е. должно быть
Код:
if(mas[i] [j]==0)
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 17.10.2009, 15:07   #4
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

Гром действительно , не досмотрел.
profi вне форума Ответить с цитированием
Старый 17.10.2009, 16:35   #5
blackslayer
 
Регистрация: 28.09.2009
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Гром Посмотреть сообщение
И,
Код:
if(mas[i] [j]==0)
Действительно помогло. Спасибо!
blackslayer вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В массиве A, состоящем из 10 элементов, подсчитать количество положительных элементов Alex61 Помощь студентам 5 16.05.2009 23:06
Количество элементов в массиве skit Общие вопросы C/C++ 3 18.03.2009 21:56
Дан массив из N элементов (чисел),определить количество элементов кратных 3. Woha Общие вопросы C/C++ 2 08.12.2008 13:12
Получить произведение номеров нулевых элементов AHJLPeu* Общие вопросы C/C++ 4 14.09.2008 13:10
количество элементов матрицы, больших среднего арифмитического всех её элементов finch Помощь студентам 3 27.08.2007 15:48