Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программа выводит что-то непонятное - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Получить среднее арифметическое всех членов последовательности http://www.cyberforum.ru/cpp-beginners/thread984970.html
Напишите пожалуйста полный код данной программы в microsoft visual studio c++ Даны действительные числа a1, ..., a20. Получить числа b1, ..., b20, где bi – среднее арифметическое всех членов...
C++ Сортировка двумерного массива Задача: Написать код сортировки двумерного массива размерностью m*n. Переставить строки матрицы так, чтобы элементы k-го столбца были отсортированы по неубыванию с помощью прямого выбора. http://www.cyberforum.ru/cpp-beginners/thread984961.html
C++ Собеседник на C++
Нужны советы как написать такую программу.
C++ Необработанное исключение
Доброго времени суток. Ошибка: Необработанное исключение типа "System.Resources.MissingManifestResourceException" в mscorlib.dll Дополнительные сведения: Не удалось найти ресурсы,...
C++ Не могу освоить функций http://www.cyberforum.ru/cpp-beginners/thread984916.html
Программа должна выдавать абсолютную и относительную погрешность, в чем проблема? #include <iostream> #include <conio.h> using std::cout; using std::cin; using std::endl; double b;
C++ Конструкция циклов с предусловаием и постусловием Вообще не соображаю как решить такую задачу (3 задача), 2-ю задачу вроде решил, его можно оценить тут :): http://www.cyberforum.ru/cpp-beginners/thread984862.html 1. Разработать алгоритм и программ... подробнее

Показать сообщение отдельно
Angeline
36 / 30 / 2
Регистрация: 21.10.2013
Сообщений: 197

Программа выводит что-то непонятное - C++

22.10.2013, 20:45. Просмотров 566. Ответов 10
Метки (Все метки)

Помогите пожалуйста, подскажите, почему программа бред выводит?

Вот программа.
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
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <C:\Users\Ангелина\Documents\Visual Studio 2008\Projects\zpr3\zpr3\function.h>
void main()
{   
    int sort=0;
    float matrica[11][15];
    float (*matrix)[11][15]=&matrica;
    int vector[11];
    int n;
    int m;
    while (1)
    {
        printf("vvedite chislo stolbcov 1-16");
        scanf("%d", &m);
        printf("vvedite chislo strok 1-11");
        scanf("%d", &n);
        if (m>0 && m<16 && n>0 && n<12) 
        {break;}
        else
        {printf("   error\n");
        printf("povtorite vvod\n");}
    }
    input(n, m, matrix);
    result(n, m, *matrix, &vector);
    output1(n, vector);
    output2(n, m, *matrix);
    while ((sort!=1) && (sort!=2) && (sort!=3))
    {
    printf("Enter the number of kind of sorting\n 1 A-Z\n 2 Z-A\n 3 Print without sorting\n");
    scanf("%d", &sort);
    }
    if (sort=1) //сортировка выбором
    {
        sort1(n, m, matrix);
    }
    if (sort=2)//обменная сортировка
    {
        sort2(n, m, matrix);
    }
    output2(n, m, *matrix);
    getch();
}
А вот function.h
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
void input(int n, int m, float (*matrix)[11][15])
{
    int i;
    int j;
    for (i=0; i<n; i+=1)
    {
        for (j=0; j<m; j+=1)
        {
            while (1) 
            {
                printf("Enter matrix element %d %d", i+1, j+1);
                scanf("%f", matrix[i][j]);
                if (*matrix[i][j]<10 && *matrix[i][j]>-10) 
                {
                    break;
                }
                else
                {
                    printf("    error   ");
                    printf("    Repeat  ");
                }
            }
        }
    }
}
void output1(int n,int mas[11])
{
    int i;
    printf("Printing result");
    for (i=0; i<n; i+=1)
    {
        printf("%d", mas[i]);
    }
}
void output2(int n, int m, float matrix[11][15])
{
    int i;
    int j;
    printf("\nPrinting matrix\n");
    for (i=0; i<n; i+=1)
    {
        for (j=0; j<m; j+=1)
        {
            printf("%f", matrix[i][j]);
        }
        printf("\n");
    }
}
void result(int n, int m,float matrix[11][15],int (*vector)[11])
{
    int i;
    int j;
    int maxj;
    int minj;
    float max;
    float min;
    for (i=0; i<n; i+=1)
    {
        maxj=1;
        minj=1;
        max=-10;
        min=10;
        for (j=0; j<m; j+=1)
        {
            if (matrix[i][j]<min)
            {
                minj=j;
                min=matrix[i][j];
            }
            if (matrix[i][j]>max)
            {
                maxj=j;
                max=matrix[i][j];
            }
        }
        if (maxj<minj) 
        {
            *vector[i]=1;
        }
        else
        {
            *vector[i]=0;
        }
    }
}
void sort1(int n, int m,float (*matrix)[11][15])
{
    int i;
    int j;
    float dop=*matrix[0][0];
    float min=*matrix[0][0];
    int mini=0;
    int minj=0;
    int k[2]={0, 0};
    int x;
    int y;
    for (i=0; i<n; i=+1)
    {
        for (j=0; j<m; j+=1)
        {
            k[1]=i; 
            k[2]=j;
            dop=*matrix[i][j];
            for (x=i; x<n; x+=1)
            {
                for (y=j; y<m; y+=1)
                {
            if (*matrix[x][y]<min)
            {
                mini=x;
                minj=y;
            }
                }
            }
            *matrix[i][j]=*matrix[mini][minj];
            *matrix[mini][minj]=dop;
        }
    }
}
void sort2(int n, int m, float (*matrix)[11][15])
{
    int i;
    int j;
    float dop;
    for (i=0; i<n; i+=1)
    {
        for (j=0; j<m; j+=1)
        {
            if (matrix[i][j]<matrix[i][j+1])
            {
                dop=*matrix[i][j];
                *matrix[i][j]=*matrix[i][j+1];
                *matrix[i][j+1]=dop;
            }
            if (*matrix[i][j]<*matrix[i+1][i])
            {
                dop=*matrix[i][j];
                *matrix[i][j]=*matrix[i+1][j];
                *matrix[i+1][j]=dop;
            }
        }
    }
}
Входная матрица
2 3 4
-2 -3 -4
0 -1 1

Скрин того, что выводится вложен.

Объясните пожалуйста, в чем проблема, у меня сейчас мозги вытекут через уши. О сортировке речь не идет, хотя она там тоже написана, но с ней пока проблем нет(я так и не смогла дождаться результата).
0
Миниатюры
Программа выводит что-то непонятное  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.