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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.07.2014, 09:06   #21
Анатолий171
Пользователь
 
Регистрация: 30.06.2014
Сообщений: 80
По умолчанию

Код:
#include <stdio.h>
 
#include <stdlib.h>
 
int main()
 
{
 
   int mas[ 50 ][ 50 ]; 
 
 
 
 
 
 
 
    printf( "Vvedite razmer matrici\n" );
 
    srand( 624 );
 
    //srand( 1 );
 
 
 
 
 
 
 
    int i, j, a, b; 
 
	scanf( "%d  %d", &a, &b ); 
 
	//a = 20; b = 4;
 
	//a = 7; b = 4;
 
 
 
    for( i = 0; i < a; i++ )
 
    {
 
        for( j = 0; j < b; j++ )
 
        {
 
 
 
 
 
 
 
            mas[ i ][ j ] = ( double )rand() / ( RAND_MAX + 1 ) * 99 + 1; 
 
 
 
 
 
 
 
            printf( "%3d", mas[ i ][ j ] );
 
        }
 
        printf("\n");
 
    }
 
    int x,y;
 
 
 
 
 
 
 
    for( y = 0; y < a; y++ )
 
    {
 
        for ( i = 0; i < ( a - 1 ); i++ )
 
        {
 
            if( mas[ i ][ 0 ] > mas[ i + 1 ][ 0 ] )
 
            {
 
                for( j = 0 ; j < b; j++ )
 
                {
 
                    x = mas[ i ][ j ];
 
                    mas[ i ][ j ] = mas[ i + 1 ][ j ];
 
                    mas[ i + 1 ][ j ] = x;
 
                }
 
            }
 
        }
 
    }
 
    printf("\n");
 
 
 
 
 
 
 
    for( i = 0; i < a; i++ )
 
    {
 
        for( j = 0; j < b; j++ )
 
        {
 
            printf( "%3d", mas[ i ][ j ] );
 
        }
 
        printf("\n");
 
    }
 
 
 
 
 
	system("pause");
 
	return 0;
 
}

Это код вроде рабочий, но у меня почему то выдает 2 ошибки которые я описал выше


Помогите мне, пожалуйста

Utkin меже пожалуйста переделать?

Последний раз редактировалось Stilet; 01.07.2014 в 10:45.
Анатолий171 вне форума Ответить с цитированием
Старый 01.07.2014, 09:15   #22
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Во-первых, научитесь оформлять код (есть кнопочка #, рядом с желтым листиком), во-вторых, мой вариант отличается от Вашего кода. Вы таки физически перемещаете строки в рамках массива. Мой вариант требует больше памяти (за счет дополнительного одномерного массива), но быстрей.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 01.07.2014, 11:39   #23
Анатолий171
Пользователь
 
Регистрация: 30.06.2014
Сообщений: 80
По умолчанию

Но у меня символьный char , а не int
Анатолий171 вне форума Ответить с цитированием
Старый 01.07.2014, 11:42   #24
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Цитата:
Но у меня символьный char , а не int
Стесняюсь спросить - в каком месте?
Код:
 int mas[ 50 ][ 50 ];
Юникодом по серому писано int
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 01.07.2014, 11:44   #25
Анатолий171
Пользователь
 
Регистрация: 30.06.2014
Сообщений: 80
По умолчанию

Блин))) Как сделать символьный? вместо int написать char?
Анатолий171 вне форума Ответить с цитированием
Старый 01.07.2014, 11:47   #26
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Цитата:
Сообщение от Анатолий171 Посмотреть сообщение
Блин))) Как сделать символьный? вместо int написать char?
Типа того.
Код:
 mas[ i ][ j ] = ( double )rand() / ( RAND_MAX + 1 ) * 99 + 1;
Эту строку поправить надо наверно .

Мне еще не нравится (но это больше придирка)
Код:
printf( "Vvedite razmer matrici\n" );
Введет 51, 51
Чем все кончится? Входом в Матрицу? Порталом в другое измерение? Открытием врат Ада?
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 01.07.2014, 11:48   #27
Анатолий171
Пользователь
 
Регистрация: 30.06.2014
Сообщений: 80
По умолчанию

#include <iostream.h>
#include <stdlib.h>
#include <conio.h>

void main()
{
int mas[ 50 ][ 50 ];

//инициализируем массив

cout << "Vvedite razmer matrici\n";
srand( 1 );

//получаем от пользователя реальные размеры массива

int i, j, a, b; cin >> a >> b;
for( i = 0; i < a; i++ )
{
for( j = 0; j < b; j++ )
{

//заполняем матрицу с помощью генератора псевдослучайных чисел

mas[ i ][ j ] = ( double )rand() / ( RAND_MAX + 1 ) * 99 + 1;

//выводим исходную матрицу

cout<< mas[ i ][ j ] ;
}
cout<<"\n";
}
int x,y;

//применяем пузырьковый метод сортировки

for( y = 0; y < a; y++ )
{
for ( i = 0; i < ( a - 1 ); i++ )
{
if( mas[ i ][ 0 ] > mas[ i + 1 ][ 0 ] )
{
for( j = 0 ; j < b; j++ )
{
x = mas[ i ][ j ];
mas[ i ][ j ] = mas[ i + 1 ][ j ];
mas[ i + 1 ][ j ] = x;
}
}
}
}
cout<<"\n";

//выводим получившуюся матрицу на экран

for( i = 0; i < a; i++ )
{
for( j = 0; j < b; j++ )
{
cout<< mas[ i ][ j ] ;
}
cout<<"\n";
}
getch();
}










Если вот такой код





и нам нужен символьный, то просто поменять int на char?
Анатолий171 вне форума Ответить с цитированием
Старый 01.07.2014, 11:51   #28
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Код:
mas[ i ][ j ] = ( double )rand() / ( RAND_MAX + 1 ) * 99 + 1;
Здесь механизм заполнения матрицы. Оно для чисел, я не уверен что это будет работать для символов. Здесь нужно придумать как и чем заполнять матрицу.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 01.07.2014, 11:52   #29
Анатолий171
Пользователь
 
Регистрация: 30.06.2014
Сообщений: 80
По умолчанию

Помогите пожалуйста...
Анатолий171 вне форума Ответить с цитированием
Старый 01.07.2014, 11:56   #30
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Код:
mas[ i ][ j ] = ( char )rand()  * 99 + 20;
Можно так попробовать - у меня нет c++ под рукой, чтобы проверить...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Упорядочить строки матрицы по неубыванию значений наименьших элементов строк PASCAL sanji2010 Помощь студентам 1 19.05.2014 23:30
Упорядочить строки целочисленной прямоугольной матрицы по возрастанию количества одинаковых элементов в каждой строке. Pascal Леви Помощь студентам 6 24.01.2014 13:08
Найти наименьший элемент в каждой строке матрицы и упорядочить строки по возрастанию этих элементов winrey Паскаль, Turbo Pascal, PascalABC.NET 1 21.10.2012 15:20