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

Перевод кода из паскаля в c++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ операция извлечения из потока для пользовательского типа http://www.cyberforum.ru/cpp-beginners/thread810287.html
Всем доброго дня! Я тренируюсь перегружать операторы извлечения из потока и операторы передачи в поток. Операцию передачи в поток я перегрузила, в вот извлечение из потока что-то не работает, помогите плиз понять или я ее неправильно перегрузила или я ее неправилно вызываю в мейн? //вот хедер файл #include <iostream> using std::ostream; using std::istream; using std::cin; using std::cout;...
C++ Подскажите, пожалуйста, почему не работает? (найти столбец с минимальной суммой элементов) Среди столбцов заданной целочисленной матрицы, которые включают только такие элементы, которые по модулю не больше 10, найти столбец с минимальной суммой элементов. #include <stdio.h> #include <conio.h> #include <iostream> #include <stdlib.h> #include <time.h> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread810279.html
сортировка одномерного массива C++
при компиляции выдает "Run-Time Check Failure #2 - Stack around the variable 'mass' was corrupted." (при перекомпиляции вывод постоянно разный) //программа для сортировки одномерного массива #include <iostream> #include <stdio.h>
Совте о создании файлового менеджера C++
Мне нужно написать файловый менеджер с удобным интерфейсом.Какие библиотеки и функции мне нужно использовать в своей программе.Направьте меня,пожалуйста, так как не знаю с чего начать. Мне нужно в программе предусмотреть удаления,копирования,перемещения,вывод списка атрибутов.
C++ Массив: заполнить пространство определенным количеством атомов http://www.cyberforum.ru/cpp-beginners/thread810236.html
Доброго времени суток! Я делаю проект для учебы. Передо мной стоит задача заполнить пространство определенным количеством атомов. Для этого я использовал трехмерный массив Atom . Этим массивом я обозначаю 1000 атомов. Кроме того, каждый элемент массива должен хранить сведения о пространственных координатах. Для этого я создаю класс Atom с переменными x, y, z и создаю на его базе новый тип...
C++ Для каждой буквы первого слово определить входит ли она во второе слово. Повторяющиеся буквы первого слова не рассматривать #include <iostream.h> #include <math.h> #include <conio.h> #include <string.h> #include <stdio.h> Не выходит с "Повторяющиеся буквы первого слова не рассматривать" main() { clrscr(); подробнее

Показать сообщение отдельно
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4248 / 2780 / 219
Регистрация: 12.12.2009
Сообщений: 7,109
Записей в блоге: 1
Завершенные тесты: 1
16.03.2013, 18:40     Перевод кода из паскаля в c++
для таких вещей давным давно есть конвертеры. Вот результат работы одного из них
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
#include "ptoc.h"
 
const integer n = 30;
const integer m = 2;
array<1,n,word> mas;
matrix<1,n, 1,2,word> popular;
word f, p, i, j, k;
int main(int argc, const char* argv[])
{
  pio_initialize(argc, argv);
  randomize;
  for( i = 1; i <= n; i ++)
  {
    mas[i] = random(5);
    output << format(mas[i],2);
  }
  for( i = 1; i <= n-1; i ++)
  for( j = i+1; j <= n; j ++)
  if (mas[i] > mas[j]) 
  {
    k = mas[i];
    mas[i] = mas[j];
    mas[j] = k;
  }
  output << NL;
  i = 1;
  p = 1;
  output << "Vsego" << NL;
  do {
    k = 1;
    while ((mas[i] == mas[i+1])&&(i<n)) 
    {
      k += 1;
      i += 1;
    }
    output << mas[i] << " - " << format((real)(k*100)/n,0,2) << '%' << NL;
    popular[p][1] = k;
    popular[p][2] = mas[i];
    p += 1;
    i += 1;
  } while (!(i > n));
  for( i = 1; i <= p-2; i ++)
  for( j = i+1; j <= p-1; j ++)
  if (popular[i][1] < popular[j][1]) 
  for( f = 1; f <= 2; f ++)
  {
    k = popular[i][f];
    popular[i][f] = popular[j][f];
    popular[j][f] = k;
  }
  output << "Itogo" << NL;
  if (p > m)  p = m;
  for( i = 1; i <= p; i ++)
  output << popular[i][2] << " - " << format((real)(popular[i][1]*100)/n,0,2) << '%' << NL;
  input >> NL;
  return EXIT_SUCCESS;
}
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
//ptoc.h
#ifndef __PTOC_H__
#define __PTOC_H__
 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <assert.h>
 
#define items(x) (sizeof(x)/sizeof(*(x)))
 
typedef int           integer;
typedef unsigned      cardinal; /* unsigned integer */
typedef float         real;
 
#if defined(TURBO_PASCAL) || defined(HP_PASCAL)
typedef unsigned       word; /* It should have the same size as integer */ 
typedef unsigned char  byte; 
#endif
 
#ifdef TURBO_PASCAL
typedef long           longint;
typedef signed char    shortint; 
typedef void*          pointer;
typedef const char*    asciiz;
#endif               
 
typedef unsigned char boolean; 
#define true          (1)
#define false         (0)
 
#define nil           NULL
 
#define EXTERN        extern
 
/*
 * Pascal runtime library headers
 */
 
#include "io.h"
#include "array.h"
#include "paslib.h"
#include "set.h"
 
#endif
при этом получены варнинги
Bash
1
2
3
9 2 warning: undefined identifier 'randomize'
12 14 warning: undefined identifier 'random'
12 20 warning: function not defined
 
Текущее время: 19:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru