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

Заменить case на вызов функций - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проверка двух текстовиков http://www.cyberforum.ru/cpp-beginners/thread19712.html
Написать прогу на языке Си, проверяющую, совпадают ли тексты в двух файлах #include <stdio.h> #include <stdlib.h> #include <math.h> #include <string.h> int main () {
C++ Среднее арифметическое значение вещественных чисел из заданного файла Напишите функцию на языке Си, вычисляющую среднее арифметическое значение вещественных чисел из заданного файла Тесты: 10 2134 123.1234 12.24 3.35 235. 532 69.546 346.345 : 385.067139 #include... http://www.cyberforum.ru/cpp-beginners/thread19709.html
C++ Решение дифференциального уравнения Риккати методом Эйлера
---------------------------------------- Это так сказать задание. Решить дифференциального уравнения Риккати методом Эйлера Само уравнение: p(t)=p(t)*A+Atr*p(t)-p(t)*B*Btr*p(t)+Q Atr и Btr -...
C++ программа вычисления значений функции в указанном промежутке
завтра уже надо сдавать лабу, а она у меня не пашет( программа вычисления значений функции в указанном промежутке. #include <stdlib.h> #include <string.h> #include <stdio.h> long double...
C++ Описать рекурсивную функцию, находящая максимум из разницы элементов, которые симметричны средине вектора http://www.cyberforum.ru/cpp-beginners/thread19688.html
В общем на Си нужно сделать следующее: Описать рекурсивную функцию max_sim(x,n), которая находит максимум из разницы элементов, которые симметричны средине (x - целочисленный, вектор длины n) С...
C++ Нужно добавить сортировку по афавиту Не могу сделать сортировку по алфавиту , остальная часть работает, есть отдельно сортировка но что то не получается у меня их соеденить. Нужно сделать сортировку по именам пунктов назначения ... подробнее

Показать сообщение отдельно
enoka
0 / 0 / 0
Регистрация: 25.12.2008
Сообщений: 19

Заменить case на вызов функций - C++

25.12.2008, 20:34. Просмотров 979. Ответов 0
Метки (Все метки)

вот код программы,работает..а как переделать?
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
#include<stdio.h>
#include<conio.h>
#include<alloc.h>
int main ()
   {
      int **x,**y,p,fl1,i,j,d,n,m,v,fl,k,g,e;
      char c;                                                                                                                                                                                                                                                     
      v=0;
      fl=0;
      do
      {
      puts("1-Vvod massiva");
      puts("2-Vjvod ischodnogo massiva");
      puts("3-Formirovanie novoi matricj iz stolbcov, ne imejushimi odinakovuh elementov");
      puts("4-Vjvod novoi matricj");
      puts("0-Vjchod");
      scanf("%d",&c);
      switch (c)
         {
            case 1:if(x!=NULL)
                     for (i=0;i<n;i++)
                         free(*(x+n));
                   free(x);
               puts("Ischodnji massiv:");
                    do
                       {
                        printf("kollichestvo strok\n");
                        scanf("%d",&n);
                        if(n<1||n>100)
                           printf("\n Oshibka!!!");
                       }
                    while(n<1||n>100);
                    do
                       {
                        printf("kollichestvo stolbcov\n");
                        scanf("%d",&m);
                        if(m<1||m>100)
                           printf("\n Oshibka!!!");
                       }
                    while(m<1||m>100);
                    x=(int**)malloc(n*sizeof(int*));
                    for(i=0;i<n;i++)
                      *(x+i)=(int*)malloc(m*sizeof(int));
                    puts("\n Vvedite massiv");
                    for(i=0;i<n;i++)
                       for(j=0;j<m;j++)
                          {
                          printf("Vvedite x[%d][%d]=",i,j);
                          scanf("%d",(*(x+i)+j));
                          }
                    fl=1;
                    fl1=0;
                    break;
            case 2: if(fl)
                      {
                        puts("\n Vvedennji massiv");
                        for(i=0;i<n;i++)
                           {
                              for(j=0;j<m;j++)
                                  printf("x[%d][%d]=%3d   ",i,j,*(*(x+i)+j));
                                  printf("\n");
                           }
                      }
                    else
                       printf("\n Vj ne vveli massiv\n");
                    puts("Dlja prodolgenija nagmite Enter");
                    getch();
                    break;
            case 3: if(fl)
                        {
                            y=(int**)malloc(n*sizeof(int*));
                            for(g=j=0;j<m;j++)
                               {
                                  k=0;
                                  for(i=0;i<n-1 && k==0;i++)
                                      for(e=i;e<n-1 && k==0;e++)
                                          if (*(*(x+i)+j)==*(*(x+e+1)+j))
                                              k++;
                                  if(k==0)
                                     {
                                          for(i=0;i<n;i++)
                                              {
                                              *(y+i)=(int*)realloc(*(y+i),(g+1)*sizeof(int));
                                              *(*(y+i)+g)=*(*(x+i)+j);
                                              }
                                          g++;
                                     }
                               }
 
                        fl1=1;
                        printf("Dlja poluchenija rezul'tata sdelajte punkt 4\n");
                        }
                    else
                        printf("\n Vj ne vveli massiv\n");
                    puts("Dlja prodolgenija nagmite Enter");
                    getch();
                    break;
            case 4: if(fl)
                     {
                      if(fl1)
                       {
                         if(g>0)
                          {
                             printf("Poluchennaja matrica:\n");
                             for(i=0;i<n;i++)
                                {
                                   for(j=0;j<g;j++)
                                       printf("%4d   ",*(*(y+i)+j));
                                   printf("\n");
                                }
                          }
                       else
                          printf("V dannoj matrice net takich stolbcov\n");
                       }
                      else
                        printf("Snachala obratites' k punktu 3\n");
                     }
                    else
                        printf("\n Vj ne vveli massiv\n");
                    puts("Dlja prodolgenija nagmite Enter");
                    getch();
                    break;
            case 0: v=1;
                     if(x!=NULL)
                       {
                        for(i=0;i<n;i++)
                            free(*(x+i));
                        }
                     free(x);
                     if(y!=NULL)
                       {
                        for(i=0;i<n;i++)
                            free(*(y+i));
                       }
                     free(y);
                    break;
            default: printf("\n Nevernji vjbor punkta menu!!!\n");
         }
      }
      while(v==0);
      printf("Reshenie zaversheno");
 
  }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru