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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2009, 21:31   #1
серг
Форумчанин
 
Регистрация: 02.11.2009
Сообщений: 179
По умолчанию

никак не получается исправить ошибки вот текст программы в которой нужно заполнить массив 10 на 6 случайными числами и заменить все отрицательные элементы на положительные


Код:
#include<stdio.h>                 
#include<conio.h>                      
#include<stdlib.h>
#include<clocale>

int main ()
{ 
setlocale(LC_ALL, "Russian");
int i,j;
int mas[10][6];
int* masp[10];
int* Mas[6];
for (i=0;i<=9;i++) {
	*masp[i] = &mas[i];
}
for (i=0;i<=9;i++)
int *Mas=&masp[i];
for (j=0;j<=5;j++)
*(Mas+j)=rand()%200-100 ;
{ printf("\n");
for (j=0;j<=5;j++) 
	printf(" %d",*(Mas+j));
}
	for (j=0;j<=5;j++)
		{
			if (*(Mas+j)<0)
			*(Mas+j)=*-(Mas+j);
			else 
			*(Mas+j)=*(Mas+j);
		}
printf("\n \n \n \n");
{printf(" \n");
	for (j=0;j<=5;j++) 
		printf(" %d",*(Mas+j));}
getch();
}
обращаться причем обязателно нужно через * и &

ошибки вылетают в строках инициализации

Последний раз редактировалось Sazary; 06.12.2009 в 23:49.
серг вне форума Ответить с цитированием
Старый 05.12.2009, 23:17   #2
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

Если с одинарным указателем то так:

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


int _tmain(int argc, _TCHAR* argv[])
{
	int i,j,N,M; 
	double *mas;
	N=10; M=6;// Размерность масива 

	mas = new double [N*M]; // Резервирование памяти для динамического массива
	
	// Заполнение массива
	for (i=0;i<N;i++)	
	   	   for (j=0;j<M;j++)
				*(mas+i*M+j)=rand()%200-100;
	

	// Вывод заполненного массива на консоль
	for (i=0;i<N;i++)	
	   	   {
			for (j=0;j<M;j++)
				{
				cout<<*(mas+i*M+j)<<"\t";
				}
			cout<<"\n";
			}

	// Если элемент меньше нуля то умножается на -1 (получается положительный)
		for (i=0;i<N;i++)	
	   	   	for (j=0;j<M;j++)
				if (*(mas+i*M+j)<0)
					*(mas+i*M+j)=*(mas+i*M+j)*(-1);
				
			cout<<"\n";
	// Вывод массива
		for (i=0;i<N;i++)	
	   	   {
			   for (j=0;j<M;j++)
				{
				cout<<*(mas+i*M+j)<<"\t";
				}
			cout<<"\n";
			}

		delete [] mas; // Освобождение памяти
}
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол

Последний раз редактировалось Sazary; 06.12.2009 в 23:49.
atenon вне форума Ответить с цитированием
Старый 05.12.2009, 23:33   #3
серг
Форумчанин
 
Регистрация: 02.11.2009
Сообщений: 179
По умолчанию

не атенон твоя прога не ботат я хоть и переправил С на С++ но все бесполезно пишет тоже что и у меня не может конвертировать
серг вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
обращение к элементам двумерного массива на С++ серг Помощь студентам 16 05.12.2009 21:01
Обращение к элементам массива через указатель в С++ серг Помощь студентам 1 24.11.2009 01:30
обращение к элементам двумерного массива через указатели в С ++ серг Помощь студентам 0 23.11.2009 22:43