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

Динамическая память - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Зеркальное отражение относительно побочной диагонали http://www.cyberforum.ru/cpp-beginners/thread94394.html
Дана квадратная матрица А порядка М. Зеркально отразить ее элементы относительно побочной лиагонали. (при этом элементы побочной диагонали останусться на прежнем месте, элемент А1,1 поменяеться местами с Ам,м, элемент А1,2 - с Ам-1,м и т.д.). Вспомагательную матрицу не использовать. Задача на С
C++ Ориентированное бинарное дерево Задача: Написать ф-цию, которая для созданного ориентированного дерева опред. расстояние между двумя заданными узлами. Ор.дерево - дерево имеющее один корень, а все узлы имеют один вход. Узлы дерева могут иметь не более двух выходов. Вопросы: 1. Что подразумевается под расстоянием? 2. Между любыми ли двумя узлами оно существует? т.е. мы можем только по направлению "стрелок"? 3. Идея алгоритма http://www.cyberforum.ru/cpp-beginners/thread94387.html
C++ Сделать массив упорядоченым...
Дан массив размера N, все элементы которого, кроме первого, упорядочены по возростанию. Сделать массив упорядоченым, переместив первый элемент на новую позицию. Задача на С
Шаблоны, классы, строки C++
:help:Наши преподы решили сделать нам сюрприз на выч. рпактику. Нужна помощ, там в коде ошибка у меня, уже мозги просто разрываются. Вот задание: Задание 1. Так как поведение приложения зависит от конфигурации, необходимо создать класс, хранящий всю конфигурацию. Этот класс хранит конфигурацию по умолчанию, а также может загружать конфигурацию из указанного файла. Кроме того, данный класс...
C++ Из Visual Studio в Dev C++ http://www.cyberforum.ru/cpp-beginners/thread94356.html
Всем Добрый День! Такой вопрос... Есть прога (проект вернее...), написана под Visual Studio, которого у меня нету, и нужно как нить проверить как она работает. Есть на компе Dev C++. Вот только выдает ошибку - 'Init Freights' undeclared (first use this function). Декларации Init Freights я не нашла. Это связано с разницей между компиляторами или все же дело в в плохо написаной проге ? Что нужно...
C++ найти максимальное в массиве:) вроде легко вроде и сделал, но неправильный результат выдает( посмарите плиз, только сильно не ругайтесь... спасибо:) вот код #include "stdafx.h" #include <iostream> using namespace std; void printArray(int mas); int max(int mas); подробнее

Показать сообщение отдельно
student-zki09
0 / 0 / 0
Регистрация: 11.02.2010
Сообщений: 4
11.02.2010, 17:58  [ТС]
до вашего совета у меня получилось.....вот:(но она вычесляет по всей матрице и меняет местами, а надо чтоб в каждой строке)
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
*Дана матрица А[N,M]. Упорядочить элементы каждой строки в порядке неубывания*/
#include <conio.h>
#include<iostream>
#include<cstdlib>
 
using namespace std;
void main()
{
    
    int n,m, //число строк и число столбцов
        i, //индексы
        d,    //вспомогательная переменная перестановки
        fl; //флаг перестановки
    int *a,*ptr;  //указатель на массив А[][]
    
        
    cout<<"Sozdaem matricu A[n,m]\n"<<"Vvedite chislo strok: n = ";cin>>n;
    cout<<"Sozdaem matricu A[n,m]\n"<<"Vvedite chislo stolbcov: m = ";cin>>m;
 
    a=new int[n*m]; //выделение памяти по двумерный массив
   
    for(i=0,ptr=a;i<n*m;ptr++,i++)
    {
            *ptr=(-3 + rand()%10);
            
        
                                                        
    }
 
                                       
    
    cout<<"Sformirovannaja matrica A[N,M]:\n";
    for(i=0,ptr=a;i<n*m;ptr++,i++)
    {
       if(i%m==0)
           cout<<"\n"; 
       cout<<"  "<<*ptr;
    }
    
    do
    {
        fl=1;  //флаг поднят
    for(i=1,ptr=a;i<n*m;ptr++,i++)
        {
                        
            if(*ptr > *(ptr+1))
                {
                    fl=0; //флаг опущен
                    d=*ptr;
                    *ptr=*(ptr+1);
                    *(ptr+1)=d;
 
                }
            
            
        }
     }
    
    while(!fl); //пока флаг поднят делаем цикл
        
    cout<<"\n"<<"Posle perestanovki elementov v strokah massiv = \n";
    for(i=0,ptr=a;i<n*m;ptr++,i++)
    {if(i%m==0)
           cout<<"\n";
           cout<<"  "<<*ptr;
    }
 
    //освобождение памяти
 
 
 
    delete []a;
getch();
  
    }
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru