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

Идентификатор clrscr не определен - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Разработать класс: Student: Фамилия, Имя, Отчество, Дата рождения, Адрес, Средний бал , Факультет, Курс http://www.cyberforum.ru/cpp-beginners/thread672510.html
Разработать классы для описанных ниже объектов. Включить в класс методы set (…), get (…), Определить другие методы Student:Фамилия,Имя,Отчество,Дата рождения,Адрес,Средний бал ,Факультет, Курс Определить является ли студент "двоечником","Троечником","Хорошистом","Отличником"
C++ сортировка Написать функцию, которая производит двоичный поиск места размещения нового элемента в упорядоченном массиве. С помощью данной функции реализовать сортировку (вставками). http://www.cyberforum.ru/cpp-beginners/thread672508.html
C++ Определение глубины (числа ветвей) непустого дерева от вершины до заданного узла
Подскажите пожалуйста. Никак не могу найти код нахождения глубины бинарного дерева от вершины до заданного узла. тут весь форум перерыл - ничего нет, подходящего под мою задачу. Саму программу я написал, осталась только эта функция (исходник дать не могу, т.к. он не на этом компе). Пожалуйста - дайте код, я не думаю, что он большой, или дайте ссылку, где это обсуждается. В крайнем случае -...
C++ функция ряда Тейлора
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, от xнач до xкон с шагом dx с точностью ε. Таблицу снабдить загаловком и шапкой. Каждая строка таблицы должна содержать значение аргумента, значение функции и количество просуммированных членов ряда. Если можно,то с объяснением
C++ Найти 3 наибольших элемента http://www.cyberforum.ru/cpp-beginners/thread672486.html
Дано целое число n(>3) и набор из n чисел.Найти 3 наибольших элемента из данного набора и вывести эти элементы в порядке убывания их значения.Спасибо заранее)
C++ Предел int или что то еще ? Задание: Определить входит ли введенная цифра в заданное натуральное число. Вот что у меня получилось: #include <iostream.h> void main() { start: int a,b,x,q=1,z=0; cout<<"Enter A (chislo)"<<endl; cin>>a; cout<<"Enter B (cifra)"<<endl; подробнее

Показать сообщение отдельно
URFIN83
0 / 0 / 0
Регистрация: 25.06.2012
Сообщений: 18
16.10.2012, 16:47  [ТС]     Идентификатор clrscr не определен
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
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
#include <stdlib.h> 
#include <stdio.h>      /*Включение в текст программы*/
#include <Windows.h>
#include <conio.h>      /*определений и описаний функций*/
#include <string.h>     /*для работы с консолью, строками*/
#include <math.h>       /*и расчета математических формул*/
#include <ctype.h>
int c[28][28],l[28],a[28];          /*Глобальное задание массивов*/
float p1[28];
void huffman (int,float *);         /*Задание прототипов функций*/
int up (int,float);
void down (int,int);
main ()
{
FILE *f,*f1;                                                                 /*Определение структуры типа файл*/
char name[10]="",ch,ch1,name1[10]="",str[3],ch2[28],t1;                      /*Определение типов переменных и массивов*/
int j,i,prob=0,zn_pr=0,n=0,m[26],nn,rev,b,e,zn,r,nol=0,ed=0;
float p_prob,p_zn_pr,p[26],h1,h2,h3=0,h,t,p2[28],s,z,lsr,p_nol,p_ed,h_nol,h_ed,h_new;
system("clr");
printf ("Укажите путь к текстовому файлу \
\nдля которого будет построен код Хаффмана: ");
gets(name);
if ((f=fopen (name,"rt")) == NULL)                    /*Проверка наличия указанного файла*/
{printf ("Не удается открыть заданный файл!");
getch();
return 0;}
for (i=0;i<26;i++)
m[i]=0;
sn: while (!feof(f)) {              /*В цикле реализован подсчет символов встречающихся в тексте*/
ch=getc(f);
if (ch!=10) n++;
if (ch==32) {prob++; continue;}
if ((ch==44) || (ch==34) || (ch==39) || (ch==45) || (ch==46) || (ch==33) || (ch==63) || (ch==58) || (ch==59))
{zn_pr++; continue;}
for (i=0;i<26;i++)
if ((ch==(i+65)) || (ch==(tolower(i+65)))) {m[i]++; goto sn;}
if ((ch!=10) && (ch!=255)) {
system("clr");
printf ("Недопустимый символ в тексте!: %c",ch);
getch ();
fclose (f);
return 0;
}
}
if ((n-1)==0) {system("clr");printf ("Файл пуст!");getch();fclose(f);return 0;}
p_prob=(float)prob/(n-1);                                                     /*Расчет вероятностей появления символов*/
if (p_prob!=0) h1=p_prob*(log10(p_prob)/log10(2));                            /*и энтропии исходного текста*/
p_zn_pr=(float)zn_pr/(n-1);
if (p_zn_pr!=0) h2=p_zn_pr*(log10(p_zn_pr)/log10(2));
for (i=0;i<26;i++) {
p[i]=(float)m[i]/(n-1);
if (p[i]!=0) h3+=p[i]*(log10(p[i])/log10(2));
}
h=-1*(h1+h2+h3);
 
for (i=0;i<28;i++) {                            /*Формирование массива символов*/
if (i==26) {ch2[i]=32;p1[i]=p_prob;}            /*и массива вероятностей символов*/
if (i==27) {ch2[i]=45;p1[i]=p_zn_pr;}
if ((i!=26) && (i!=27)) {p1[i]=p[i]; ch2[i]=i+65;}
}
 
for (i=0;i<27;i++)                        /*Упорядочивание сформированных массивов*/
for (j=i+1;j<28;j++)                      /*по убыванию*/
if (p1[i]<p1[j]) {
t=p1[i];   t1=ch2[i];
p1[i]=p1[j];  ch2[i]=ch2[j];
p1[j]=t;      ch2[j]=t1;
}
 
for (i=0;i<28;i++)
p2[i]=p1[i];
 
for (i=0;i<28;i++)                       /*Вычисление элементов*/
if (p1[i]==0) {nn=i-1;b=nn;break;}       /*с ненулевой вероятностью*/
 
while (nn>0) {                 /*В цикле реализовано построение кода Хаффмана*/
huffman (nn,p1);
nn--;}
rev=nn+2;
while (rev<=b) {
e=a[rev];
down (rev,e);
rev++;
}
printf ("\n*************************Кодовая таблица****************************\n");
for (i=0;i<=b;i++) {
if  (ch2[i]==32) printf ("\nПробел\t");
if (ch2[i]==45) {printf ("\nЗн.преп.");r=i;}
if ((ch2[i]!=32) && (ch2[i]!=45)) printf ("\n%c\t",ch2[i]);
printf ("\tp[%d]=%6.4f\tl[%d]=%d\t\t",i,p2[i],i,l[i]);
for (j=0;j<l[i];j++)
printf ("%d",c[i][j]);
getch ();
}
s=0;
for (i=0;i<=b;i++) {
z=-l[i];
s+=pow(2,z);
}
printf ("\n*********************************************************");
printf ("\nВыполнение неравенства Крафта-МакМиллана:");
if (s<=1) printf ("\nНеравенство верно %6.4f<=1",s);
else
printf ("\nНеравенство неверно %6.4f<=1",s);
getch();
lsr=0;
for (i=0;i<=b;i++)
lsr+=p2[i]*l[i];
rep: printf ("\nЗакодировать исходный текст полученным кодом? <yes/no>");
scanf ("%s",str);
if (strcmp(str,"yes")==0) {
printf ("\nВведите имя файла для кодирования текста: ");
scanf ("%s",name1);
f1=fopen(name1,"wt");
rewind (f);
while (!feof(f)) {              /*В цикле реализовано кодирование исходного текста*/
ch=getc(f);                     /*полученным кодом Хаффмана*/
if ((ch==44) || (ch==34) || (ch==39) || (ch==45) || (ch==46) || (ch==33) || (ch==63) || (ch==58) || (ch==59))
for (j=0;j<l[r];j++)
fprintf(f1,"%d",c[r][j]);
else
for (i=0;i<=b;i++)
if (ch==(ch2[i]) || (ch==(tolower(ch2[i]))))
for (j=0;j<l[i];j++)
fprintf(f1,"%d",c[i][j]);
}
fclose(f);
fclose (f1);
printf ("\nТекст успешно закодирован!");
getch ();
n=0;
f1=fopen(name1,"rt");
while (!feof(f1)) {                /*В цикле реализован расчет энтропии закодированного файла*/
n++;
ch=getc(f1);
if (ch==48) nol++;
if (ch==49) ed++;
}
p_nol=(float)nol/(n-1);                                    /*Расчет вероятностей появления символов*/
if (p_nol!=0) h_nol=p_nol*(log10(p_nol)/log10(2));
p_ed=(float)ed/(n-1);
if (p_ed!=0) h_ed=p_ed*(log10(p_ed)/log10(2));
h_new=-1*(h_nol+h_ed);
fclose (f1);
system("clr");
printf ("\n*********************************************************");
printf ("\nЭнтропия исходного файла: h=%6.4f",h);
printf ("\nСредняя длина кодового слова: lsr=%6.4f",lsr);
printf ("\nЭнтропия закодированного файла: h_new=%6.4f",h_new);
getch();
}
else
if (strcmp(str,"no")==0) return 0;
else goto rep;
 
}
 
/*Функции построения кода Хаффмана*/
 
void huffman (int n1,float p2[])
{int i;
float q;
if (n1==1) {c[0][0]=0;l[0]=1;
c[1][0]=1;l[1]=1;}
else {
q=p2[n1-1]+p2[n1];
a[n1]=up(n1,q);
}
}
 
 
int up (int n2,float q2) {
int i,j;
j=0;
for (i=n2-1;i>0;i--)
if (p1[i-1]<q2) p1[i]=p1[i-1];
else {j=i;break;}
p1[j]=q2;
return j;
}
 
void down (int x, int y) {        /*Формирование кодовых слов*/
int s[28],l1,i,j;
l1=l[y];
for (i=0;i<l1;i++)
s[i]=c[y][i];
for (i=y;i<(x-1);i++)
for (j=0;j<28;j++)    {
c[i][j]=c[i+1][j];
l[i]=l[i+1];
}
for (i=0;i<l1;i++)  {
c[x-1][i]=s[i];
c[x][i]=s[i];
}
c[x-1][i]=0;
c[x][i]=1;
l[x-1]=l1+1;
l[x]=l1+1;
}
Одно поборол, теперь другая проблема
c:\...\projects\lab-2\lab-2\lab-2.cpp(52): error C2668: log10: неоднозначный вызов перегруженной функции
c:\...\include\math.h(577): может быть "long double log10(long double)"
c:\...\include\math.h(529): или "float log10(float)"
c:\...\include\math.h(121): или "double log10(double)"
при попытке сопоставить список аргументов "(int)"
c:\documents and settings\admin\мои документы\visual studio 2010\projects\lab-2\lab-2\lab-2.cpp(55): error C2668: log10: неоднозначный вызов перегруженной функции
c:\program files\microsoft visual studio 10.0\vc\include\math.h(577): может быть "long double log10(long double)"
c:\program files\microsoft visual studio 10.0\vc\include\math.h(529): или "float log10(float)"
c:\program files\microsoft visual studio 10.0\vc\include\math.h(121): или "double log10(double)"
при попытке сопоставить список аргументов "(int)"
c:\...\projects\lab-2\lab-2\lab-2.cpp(100): warning C4244: =: преобразование "int" в "float", возможна потеря данных
c:\...\projects\lab-2\lab-2\lab-2.cpp(143): error C2668: log10: неоднозначный вызов перегруженной функции
c:\...\include\math.h(577): может быть "long double log10(long double)"
c:\...\include\math.h(529): или "float log10(float)"
c:\...\include\math.h(121): или "double log10(double)"
при попытке сопоставить список аргументов "(int)"
c:\....\projects\lab-2\lab-2\lab-2.cpp(145): error C2668: log10: неоднозначный вызов перегруженной функции
c:\...\include\math.h(577): может быть "long double log10(long double)"
c:\...\include\math.h(529): или "float log10(float)"
c:\...\include\math.h(121): или "double log10(double)"
при попытке сопоставить список аргументов "(int)"

Добавлено через 1 минуту
Может кто попробует у себя скомпилировать и скажет на каком компиляторе работает?????????
 
Текущее время: 10:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru