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

Оцените код - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Необходимо перейти с С# на С++ http://www.cyberforum.ru/cpp-beginners/thread252386.html
Привет всем! Начинаю изучать С++ вместе с С#. Пытаюсь преобразовать следующий код в С++...Нужно вывести три предложения из текста в обратном порядке.Что наработал: using System; using System.Text; class Program { static void Main(string args)
C++ Программа "Динамическая модель солнечной системы" Дали задание, а я в этом не разбираюсь ни как!!! Программа "Динамическая модель солнечной системы". В программе используются объекты ЗВЕЗДА и ПЛАНЕТА из подключаемого модуля . Объект звезда устанавливает точку с заданными координатами и с заданным цветом. Его методы позволяют перемещать и гасить точку. Объект планета наследует свойства объекта звезда и имеет аналогичные методы по... http://www.cyberforum.ru/cpp-beginners/thread252362.html
C++ написал первую прогу в СИ. не запускается.исправьте пож ошибку(и)
#include <math.h> main () { float a,b,c,x,s; cout<<"Введите a,b,c через пробел"; cin>> a,b,c; x=fabs(c-b); s=pow(a,x)*(sin(log(pow(a,x)))+cos( log(pow(a,x))));
C++ Связные списки и множества элементов
Здравствуйте!Помогите пожалуйста переделать программу с помощью упорядоченых связных списков: 1)Написать программу которая: -проверяет принадлежание элемента множеству; -проверка пустоты множества; -добавление и удаление элемента; -чтение и выведение эементов; Написать модуль,который реализует понятие множества целых.Для подачи множества использовать упорядоченый связный список. 2)Написать...
C++ Посчитать сумму элементов массива, при которых квадратное уравнение имеет решение http://www.cyberforum.ru/cpp-beginners/thread252355.html
Дана матрица a (а1,а2,а3...аn) Найти сумму тех элементов,при которых уравнение X^2+3ax+5=0 Если таких элементов нет,вывести 0. //Trvac e (a1,a2,...an) miachaph zangvac. Gtnel ayn tarreri gumary, voronc depqum //X2+3aix+5=0 qarakusi havasarumn uni irakan armatner. Ete aydpisi elementner chkan, apa tpel 0. //----------------------------
C++ Открытие и побитовое чтение jpeg-файла Здравствуйте уважаемые участники форума. Прошу подсказать, как лучше справиться с задачей. Собственно нужно открыть jpeg-файл и прочитать оттуда разную информацию, для того чтобы потом использовать ее для создания другого файла, тоже jpeg. Хочется услышать вообще идею, как это делается. Как обычно обрабатываются файлы такого вида? Я иду по такому пути: 1. Открываю файл типа FILE *file... подробнее

Показать сообщение отдельно
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
05.03.2011, 00:40     Оцените код
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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
//--------------------------------------------------
//1.Динам. одномерный массив Х заполнить функцией rand()
//2.Симметрические числа скопировать в Y массив 
//3.Сортировать Y 
//4.Те числа, которые после сортировки не меняли свое место - скопировать в Z массив
//--------------------------------------------------
 
#include <iostream>
#include <stdlib.h>   
#include <time.h>
 
using namespace std;
//--------------------------------------------------
//1.Input X
//2.Counting symetric numbers,and return it to main. It will be size of Y array
//3.Creating Y array with his size
//4.Calling function,who writing symetric numbers to Y array
//5.Creating a T array with Y arrays size,and copy all numbers from Y to T (T IS BUFF)
//6.Sort Ascending Y array
//7.After sorting are compared T and Y arrays.
//If there is some element that did not changed his place,that element have to written to Z array.
//--------------------------------------------------
 
void inp(int* x,int n);         // input x
void out(int* x,int n);         //out function
int symCounter(int* x,int n);      // counting for symetric nubers in X array
void sym(int* x,int n,int* y);      //coping symetric numbers to Y array
bool CheckForSym(int a);      //checking for a symetric number
void sort(int* x,int n);      //sorting Y array
void T_inp(int* y,int m,int* t);      // input of T array
int Z_counter(int* y,int m,int* t);      //Take a Z arrays size
void Z_inp(int* y,int m,int* t,int* z);         //input of Z
 
 
 
void main()
{
   int n;      //size of X array
   int Y_count,Z_count;      //sizes of Y and Z array (T arrays size = Y arrays size)
   cout<<"n=";
   cin>>n;
 
   int* x=new int[n];
   inp(x,n);      //input X
   cout<<"ARRAY X"<<endl;       //output X
   out(x,n);
   Y_count=symCounter(x,n);    //Take a Y's size,counting symetric numbers in X
   int* y=new int[Y_count];    //creating Y
   int* t=new int[Y_count];    //creating T (buff)
   sym(x,n,y);         //Input Y arrays with symetric numbers
   T_inp(y,Y_count,t); //Copy all element of array Y to T array (buff)
   cout<<endl<<"ARRAY Y BEFORE SORTING"<<endl; //outputs of Y array
   out(y,Y_count);
   sort(y,Y_count);      // Call sort fucntion,who ascending Y array
   cout<<endl<<"ARRAY Y AFTER SORTING"<<endl;
   out(y,Y_count);
   
   Z_count=Z_counter(y,Y_count,t);         //Take a size off Z array
   int* z=new int[Z_count];      //Creating of Z
   Z_inp(y,Y_count,t,z);      //input of Z
   
   cout<<endl<<"ARRAY Z"<<endl;
   out(z,Z_count);
}
 
void inp(int* array,int size)       //Input of X
{
   srand(time(0));
 
   for(int i=0;i<size;i++)
      *(array+i)=rand()%100;
}
 
void out(int* Array,int size)      //Function of arrays print
{
   for(int i=0;i<size;i++)
      cout<<*(Array+i)<<" ";
   cout<<endl<<endl;
}
 
 
bool CheckForSym(int a)         //Function for checking is that number symetric or not,if yes return 1,else 0
{
   int buff=a;
   int m=0;       // M is a size of y array.
   int i=0;      //Index of array in while loop
   bool t=1;      // Result
   while(a)      //Take a size of y array,counting block
   {
      a/=10;      
     a%=10;
      m++;         //size +1
   }
   a=buff;         //after first loop while, a=0,so we must to recover it,a=buff
   int* y=new int[m];         //creating array with m size
   
   while(a)         //Input of array,where is checking for symetric number
   {
      *(y+i++)=a%10;      //after this place, i=m
       a/=10;      
   }
 
 
  int k=i-1;      
   for(int j=0;j<i/2;j++)       // place of checking for sym number, loop from 0 to i/2
      if(*(y+j)!=*(y+k--))      //k=m-1. if not equal,loop is breaking
      {
         t=0;
         break;
      }
 
     return t;
}
 
int symCounter(int* array,int size)      //counting symetric numbers, size of Y array
{
   int count=0; //counter
   for(int i=0;i<size;i++)
      if(CheckForSym(*(array+i))==1  && *(array+i)>10)   //calling CheckForSym function,if result = 1, count + 1
         count++;
 
   return count;      //return result
}
 
 
void sym(int* x,int n,int* y)      //input of Y array,all symetric numbers writing in Y array from X
{
   int j=0;      //Y arrays index
   for(int i=0;i<n;i++)
      if(CheckForSym(*(x+i))==1 && *(x+i)>10)      //*(x+i)>10, why, be couse 5 is symetric to,we need in numbers,bigger then 10
         *(y+j++)=*(x+i);
}
 
 
 
void sort(int* x,int n)
{
   bool t=1;      //for loop while
   int buff;      //buffer
 
   while(t)
   {
      t=0;          //if "if" operator is illegal,loop breaks
      for(int i=1;i<n;i++)       // wolking on all elements
      {      
         if(*(x+i-1)>*(x+i))       // if the element > then folowing element, chage places
         {
            buff=*(x+i-1);
            *(x+i-1)=*(x+i);
            *(x+i)=buff;
 
            t=1;         //if "if" operator is legal,loop will spin again
         }
      }
   }
}
 
 
int Z_counter(int* y,int m,int* t)      //counting numbers,that in Y array after sorting didnt changed a place
{
   int count=0;
   for(int i=0;i<m;i++)
      if(*(y+i)==*(t+i))
         count++;
   return count;      //return result
}
 
 
void T_inp(int* y,int m,int* t)         //copy all Y arrays elements to T
{
   for(int i=0;i<m;i++)
      *(t+i)=*(y+i);
}
 
void Z_inp(int* y,int m,int* t,int* z)      //input that elemnt,that after sorting of Y arry didnt changed his place
{
   int j=0;
   for(int i=0;i<m;i++)
      if(*(y+i)==*(t+i))
         *(z+j++)=*(y+i);
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru