Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Роли базы данных в MS SQL Всем доброго времени суток! Столкнулся с такой проблемой: мною создана роль базы данных db_staff,которая объединила в себе роли db_datawriter и db_datareader. Эта роль назначена пользователю... https://www.cyberforum.ru/ cpp-beginners/ thread2450078.html Не могу найти ошибку C++
Ребята помогите питаюсь сделать угадайку не знаю где ошибка using namespace std; void main() { setlocale(LC_ALL, "RUS"); srand(time(NULL)); int b = rand(); int a = rand(); int c,b;
C++ Ссылка на неразрешенный внешний символ _main в функции" при сборке помогите, пожалуйста, решить проблему (visual studio 2019) , не могу запустить код, выводит следующую ошибку LNK2019: ссылка на неразрешенный внешний символ _main в функции "int __cdecl... https://www.cyberforum.ru/ cpp-beginners/ thread2450072.html C++ Класс, который производит действия с координатами многоугольника https://www.cyberforum.ru/ cpp-beginners/ thread2450065.html
У меня есть выпуклый многоугольник. Я должен создать класс Локус, где действия будут происходить с копией координат многоугольника. (Поворот многоугольника вокруг центра, сдвиг и нахождения...
C++ ASCII в UTF-8 и обратно
Как можно кодировать строку в ASCII из UTF-8, и наобарот?
C++ Задание с перегрузкой https://www.cyberforum.ru/ cpp-beginners/ thread2450059.html
Используя перегрузки функций, написать программу вычисления произведения двух переменных разного типа С ++ Я тут попробовал, вот что вышло: #include <iostream> using namespace std; double...
C++ Вычисление произведения двух переменных разного типа Используя перегрузки функций, написать программу вычисления произведения двух переменных разного типа С ++ Я тут подумал, поделал, и вот что смог: #include <iostream> using namespace std; ... https://www.cyberforum.ru/ cpp-beginners/ thread2450056.html C++ Для каждой строки матрицы определить максимальное и минимальное значение элементов
Дан двумерный массив целых чисел a из n строк и m столбцов. Требуется для каждой строки определить максимальное и минимальное значение элементов. Формат входных данных Первая строка входного...
C++ Организация файлового ввода-вывода матрицы на основе приведенного кода Помогите, пожалуйста, организовать файловый ввод-вывод матрицы на основе этого кода. Матрица должна считываться из фаила txt, выводиться на экран, затем выполняется перестановка минимальных значений... https://www.cyberforum.ru/ cpp-beginners/ thread2450044.html C++ Рассчитать сумму n членов ряда https://www.cyberforum.ru/ cpp-beginners/ thread2450041.html
Рассчитать сумму n членов ряда: 1-\frac3{2!}{x}^{2}+\frac5{4!}{x}^{4}-\frac{10}{6!}{x}^{6}+... Даже нет предположений как сделать. Помогите пожалуйста. Заранее спасибо.
Рекурсивная функция C++
Здравствуйте! Дана задача смоделировать распространение вируса на плоскости. Вначале в одной из ячеек находится вирус, за каждый ход он распространяется на одну ячейку вверх и вниз, влево и право....
C++ Написать программу детсада,чтобы были структуры,массивы и файлы я представляю так..допустим Воспитатели,Персонал(уборщик,повара,няньки),дети-Структуры А дальше их вывод Ну соответственно добавить, удалить и изменить... https://www.cyberforum.ru/ cpp-beginners/ thread2450032.html
1 / 1 / 0
Регистрация: 07.02.2016
Сообщений: 6
0

Что за версия языка с++? - C++ - Ответ 13556204

09.05.2019, 14:20. Показов 1060. Ответов 3
Метки (Все метки)

Скачал исходник с MIT, датируемый 1990 годом. Вроде как плюсы, но синтаксис неясный, gcc его не компилит.

C++
1
2
3
4
5
6
void main(argc,argv)
     int argc;
     char *argv[];
{
...
}
Вот такие конструкции я обнаружил уже внутри.

Может кто подсказать, как скомпилировать это чудо?

Кликните здесь для просмотра всего текста
/* ACMS_EXAMPLE.C */
/* Example main program to demonstrate arithmetic coding and decoding */
/* Ashok Popat 6/90 --- modified version of prog. given in thesis */

/*
* Copyright 1990 Massachusetts Institute of Technology
* All rights reserved.
*
* Permission to use, copy, or modify this software and its documentation
* for educational and research purposes only and without fee is hereby
* granted, provided that this copyright notice appear on all copies and
* supporting documentation. For any other uses of this software, in
* original or modified form, including but not limited to distribution
* in whole or in part, specific prior permission must be obtained from
* M.I.T. and the author. These programs shall not be used, rewritten,
* or adapted as the basis of a commercial software or hardware product
* without first obtaining appropriate licenses from M.I.T. M.I.T. makes
* no representations about the suitability of this software for any
* purpose. It is provided "as is" without express or implied warranty.
*/


#include <stdio.h>
#include <math.h> /* for log and pow */

#define MAXK 512 /* max allowable size of source alphabet */
#define MAXN 10000 /* max allowable length of source string */
#define MAXM 90000 /* max allowable length of codestring (be conservative) */

extern void encode(),decode(); /* routines we're trying to demonstrate */
long random();
double maxran;
double peakiness;

void main(argc,argv)
int argc;
char *argv[];
{
void gensource(); /* generates random source sequence according to probs*/
double entropy(); /* computes source entropy */
int strings_match(); /* to check for correct decoding */

double avelength; /* average number of bits per letter */
long nlet,nbits; /* length of source string and code string */
int alphsize; /* number of letters in source alphabet */

double diff;
static double probs[MAXK];

int sourcebuf[MAXN],codebuf[MAXM],destbuf[MAXN];

double totprob = 0.0;
int i;

if (argc != 3) {
fprintf(stderr,"usage: %s alphsize peakiness\n", argv[0]);
fprintf(stderr,"\twhere 2 <= alphsize < %d\n",MAXK);
fprintf(stderr,"\tand peakiness > 0\n",MAXK);
exit(-1);
}
sscanf(argv[1],"%d",&alphsize);
sscanf(argv[2],"%lf",&peakiness);

maxran = pow(2.0,31.0) - 1.0; /* max poss. val. of random() */

/* probabilties are random in this version --- change as desired */
/*
* for (i=0; i<alphsize; i++) {
* probs[i] = ((double) random())/maxran;
* totprob += probs[i];
* }
*/

/* probabilities have a discretized Laplacian distribution */
/* reduce entropy by increasing peakiness */

for (i=0; i<alphsize; i++) {
diff = fabs((double) (i-alphsize/2));
probs[i] = exp(-diff*peakiness);
totprob += probs[i];
}
for (i=0; i<alphsize; i++) probs[i] /= totprob;


nlet = 10000;

/* fill up source buffer: */
printf("generating source...\n");
gensource(sourcebuf,alphsize,nlet,probs);

/* encode source, putting resulting bits in codebuf, and set nbits: */
printf("encoding...\n");
encode(alphsize,probs,sourcebuf,nlet,16,15,codebuf ,&nbits);

avelength = ((double) nbits)/((double) nlet); /* ave. per-letter length */

printf("decoding...\n");
/* decode, putting result in destbuf: */
decode(alphsize,probs,destbuf,nlet,16,15,codebuf,n bits);

printf("verifying...\n");
/* verify results: */
if (strings_match(nlet,sourcebuf,destbuf))
printf("No errors.\n");
else
printf("Errors were found.\n");

/* report performance: */
printf("Entropy = %lf\nActual codebits per letter = %lf\n",
entropy(alphsize,probs),avelength);
}

int strings_match(n,a,b)
long n;
int *a,*b;
{
long i;
for (i=0;i<n;i++) {
if (*(a+i) != *(b+i)) return(0);
}
return(1);
}

#define SMALLNUM 1.0e-14
#define happylog(x) ( x>SMALLNUM ? log(x) : log(SMALLNUM))

double entropy(k,p)
int k;
double *p;
{
double sum = 0.0;

while (k-- > 0) sum -= *(p+k) * happylog(*(p+k));

return(sum/log(2.0));
}
#undef SMALLNUM

void gensource(buf,k,n,p)
double *p;
int *buf,k;
long n;
{
double ranvar,thresh[MAXK], invmaxran;
int *bufcopy;
int i;

/* divide unit interval into k segments, each corresponding to a
** different source letter, and each having a width equal to the
** probability of the corresponding source letter. Select a letter
** by generating a uniformly-distributed random number between
** 0 and 1, then finding the letter that corresponds to the segment
** that contains the random number. */

invmaxran = 1.0/maxran;

bufcopy = buf;
/* set up thresholds to be cum. prob of letters: */
thresh[0] = 0;
for (i=1;i<k;i++) thresh[i] = thresh[i-1] + *(p+i-1);

while (n-- > 0) {
ranvar = ((double) random()) * invmaxran;
for (i=k-1;i>=0;i--) {
if (thresh[i] < ranvar) {
*bufcopy++ = i;
break;
}
}
}
}






Вернуться к обсуждению:
Что за версия языка с++? C++
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.05.2019, 14:20
Готовые ответы и решения:

Какая версия языка у языка С++?
Здравствуйте! Собираюсь писать егэ по информатике уже меньше, чем через две недели. Собираюсь...

Что за конструкция языка
int a={{{1,2},3},{{4,5},6},{{7,8},9}}; как можно вывести значение 6 например? как вообще...

Что такое HWND с точки зрения языка?
Привет, начал потихоньку с win api знакомиться, полез вглубь исходников студии, чтобы понять, чем...

Что изучать после изучения основ языка
Доброго дня друзья. У меня такой вопрос. Подруга изучила основы С++, параллельно изучает книгу по...

3
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.05.2019, 14:20
Помогаю со студенческими работами здесь

Версия языка
На егэ по информатике в 27 задании требуют указать: язык программирования и его версию(...укажите...

Версия языка
Всем привет. Возможно, слишком глупый вопрос. Но. Если я использую компилятор Dev-C++ 5.11 и пишу...

как просит биос леново ноутбук версия биоса 2-54 на офисал саите версия 2-53 что ето такое?
вопрос как просит биос леново ноутбук версия биоса 2-54 на офисал саите версия 2-53 сто ето такое?

Старые книги, новая версия языка
Здравствуйте! Сейчас версия 6.0. Я могу безполезненно для себя читать &quot;Шилдта. Полное руководство&quot;...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru