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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.07.2010, 11:58   #11
Арнис
Пользователь
 
Регистрация: 11.07.2010
Сообщений: 18
По умолчанию

подскажите как это сделать?
Арнис вне форума Ответить с цитированием
Старый 13.07.2010, 12:11   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Арнис
Да откуда же я знаю куда тебе эту функцию нужно пихать?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.07.2010, 13:05   #13
Арнис
Пользователь
 
Регистрация: 11.07.2010
Сообщений: 18
По умолчанию

ну мне нужно чтобы эта функция сосчитала количество нулей в матрице
Арнис вне форума Ответить с цитированием
Старый 13.07.2010, 13:27   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вот из Visual Studio:
Код:
// ewrw.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <conio.h>

using namespace std; 
const int M=100;
const int N=2000;	
int  A[M][N];
int random (int N) {return rand()%N;};

int search(int a[M][N], int n, int m)
{
	int poisk = 0;
	for(int i = 0; i <m; i++) 
		for(int j=0;j<n;j++) poisk+=(a[i][j]==0)?1:0;
	return poisk;
}


int _tmain(int argc, _TCHAR* argv[])
{	
	int i, j, a=0, b=1, n, m;
	cout<<"vvedite chislo strok m : ";
    cin>>m;
    cout<<"vvedite chislo stolbtsov n : ";
    cin>>n;

	for (i=0; i<m; i++)
		for (j=0; j<n; j++)
			A[i][j] = random (b-a+1)+a;
		printf ("Matritsa:\n");
			for (i=0; i<m; i++)
			{
				for (j=0; j<n; j++)
					printf("%2d", A[i][j]);
				printf("\n");
			}
    printf("%d",search(A,m,n));
			system("pause");
	return 0;
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.07.2010, 14:04   #15
Арнис
Пользователь
 
Регистрация: 11.07.2010
Сообщений: 18
По умолчанию

спасибо только он выдает ошибку:
fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory

и еще может быть ты смог написать как сделать что бы пользователь сам мог задавать долю нулей в матрице
Арнис вне форума Ответить с цитированием
Старый 13.07.2010, 14:06   #16
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Cannot open include file: 'stdafx.h': No such file or directory
убери его вообще из кода.
Цитата:
сам мог задавать долю нулей в матрице
А я формулы не знаю. Если знаешь формулу говори, переведу на Си.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.07.2010, 14:11   #17
Арнис
Пользователь
 
Регистрация: 11.07.2010
Сообщений: 18
По умолчанию

если убрать: #include "stdafx.h"
то выдает ошибку: error C2061: syntax error : identifier '_TCHAR'
Арнис вне форума Ответить с цитированием
Старый 13.07.2010, 14:20   #18
Арнис
Пользователь
 
Регистрация: 11.07.2010
Сообщений: 18
По умолчанию

а все я на шел способ исправить
Арнис вне форума Ответить с цитированием
Старый 13.07.2010, 14:33   #19
Арнис
Пользователь
 
Регистрация: 11.07.2010
Сообщений: 18
По умолчанию

извини я в прошлый раз не точно сформулировал задание там надо сосчитать в матрице максимальное количество нулей прилегающих друг к другу по вертикале и по горизонтали проверь этот код правильный:
Код:
#include <tchar.h>
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <conio.h>

using namespace std; 
const int M=100;
const int N=2000;	
int  A[M][N];
int random (int N) {return rand()%N;};

int search(int a[M][N], int n, int m)
{
	int poisk = 0;
	for(int i = 0; i < m; i++)
	{
		for(int j = 0; j < m; j++)
		{
			if(((a[i][j]==0) && (a[i+1][j]==0)) || ((a[i][j]==0) && (a[i][j+1]==0)))
			{
				poisk++;				
			}
		}
	}
	return poisk;

}


int _tmain(int argc, _TCHAR* argv[])
{	
	int i, j, a=0, b=1, n, m;
	cout<<"vvedite chislo strok m : ";
    cin>>m;
    cout<<"vvedite chislo stolbtsov n : ";
    cin>>n;

	for (i=0; i<m; i++)
		for (j=0; j<n; j++)
			A[i][j] = random (b-a+1)+a;
		printf ("Matritsa:\n");
			for (i=0; i<m; i++)
			{
				for (j=0; j<n; j++)
					printf("%2d", A[i][j]);
				printf("\n");
			}
	printf("%d",search(A,m,n));
	//		system("pause");
	return 0;
}

Последний раз редактировалось Stilet; 13.07.2010 в 14:55.
Арнис вне форума Ответить с цитированием
Старый 13.07.2010, 17:20   #20
Арнис
Пользователь
 
Регистрация: 11.07.2010
Сообщений: 18
По умолчанию

пробовал считать сам эта функция не всегда правильно считает
Арнис вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерный массив.. uropb992 Помощь студентам 6 23.10.2010 01:40
Двумерный массив, одномерный массив. Branbal Помощь студентам 14 18.11.2009 12:40
Двумерный массив Анжелика Помощь студентам 3 29.12.2008 21:23
Двумерный массив... Seriy8888 Паскаль, Turbo Pascal, PascalABC.NET 1 24.12.2008 21:26
Двумерный массив apetr Паскаль, Turbo Pascal, PascalABC.NET 2 30.11.2008 12:32