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

Портация кода Pascal - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ найти нужный ID, не перебирая каждый элемент в потоке http://www.cyberforum.ru/cpp-beginners/thread28467.html
Добрый день! у меня есть числовой f.dat, с которым работаем консольное приложение 9045 0 180 45 0.0251608 -0.0228552 -0 0 -0.0228552 0.0251608 0 0 0 0 -0.0105215 0 0 0 0 -0.0105215 555 300 135 0.949986 0.00837315 0.0139804 -0.0103626 0.00837315 -0.592651 0.596302 -0.441994 -0.0139804 -0.596302 -0.719417 -0.170758 -0.0103626 -0.441994 0.170758 0.823219 555 300 45 0.023711 0.0137558...
C++ Работа с рядками Помогите пожалуйста сделать такое задание : Нада програма которая: - копирует рядок S в S1 N раз - отделяет первое слово с рядка S - сравнивает S и S1 c игнорированием отменностей в регистрах. - определяет тип рядка (Буквы, Десятковые числа, Двоичные, Шестнадцатеричные) - выводит количество слов с рядка S - Значения S, S1 и N вводит пользователь Стандартными функциями пользоваться... http://www.cyberforum.ru/cpp-beginners/thread28448.html
Нет инициализации графического режима в BorlandC++ под ДОС C++
Привет всем,проблема такая после относительно долгих вычислений стараюсь инициализировать графический режим,но он выдает ошибку - Not enough memory to load driver (не хватает памяти для загрузки драйвера),хотя если закоментить эти вычисления все проходит нормально и gdriver возращает 9(вместо - 5). В чем проблема подскажите плиз smile smile smile Уже задолбался,ток эта проблема,ниже приведен...
C++ А вот что за стеки!
В свое время мне трудно далась тема создания и вывода на печать текстовых файлов. Сейчас вспомнилось и хочу поделиться. int Create_txt_File (char *filname) { FILE *pF; if ((pF=fopen (filname,"w"))== NULL) return -1; char buf; gets (buf); strcat (buf,"\n"); while (*buf!='\n') {
C++ Проверка типа http://www.cyberforum.ru/cpp-beginners/thread28396.html
int n; std::cin >> n; Как проверить тип введённых данных? Ведь если введено не int, то программа будет работать не так, как мне нужно.
C++ Работа с мышью Нужна ваша помощь. Незнаю как заставить двигатся курсор мыши только по окружности радиусом r с центром в точке (x,y), работа с мышью осуществляется через процедурку int86, нужен сам алгоритм не обязательно с его реализацией, главное по подробнее =). подробнее

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

Портация кода Pascal - C++

02.04.2009, 12:50. Просмотров 672. Ответов 4
Метки (Все метки)

Нужно сжать массив в котором есть нулевые элементы выкинув их. вот пример на паскале
Pascal
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
program noules;
uses wincrt;
type mas=array[1..100] of integer;
procedure Vvod(var x:byte;var ms:mas);
var i:byte;
begin
write('Vvedite razmer massiva: ');
readln(x);
for i:=1 to x do
  begin
    write('el mass[',i,']=');
    readln(ms[i]);
  end;
end;
procedure Vyvod(x:byte;var ms:mas);
var i:byte;
begin
for i:=1 to x do
write(ms[i],' ');
writeln;
end;
{Opredelenie pervoj cifry}
function Cifr(x:integer):byte;
var s:string;
    t,c:integer;
begin
str(x,s);
val(s[1],t,c);
Cifr:=t;
end;
{Udalenie nolej}
procedure UdalenieNolej(var x:byte;var ms:mas);
var
i,k:byte;
begin
for i:=x downto 1 do
if ms[i]=0 then
  begin
    for k:=i to x-1 do
    ms[k]:=ms[k+1];
    x:=x-1;
  end;
end;
{Sortirovka po pervoj cifre}
procedure Sort(x:byte;var ms:mas);
var i,k:byte;
    b:integer;
begin
for i:=1 to x-1 do
for k:=i+1 to x do
if Cifr(ms[i])>Cifr(ms[k])then
   begin
    b:=ms[i];
    ms[i]:=ms[k];
    ms[k]:=b;
   end;
end;
var a:mas;
    n:byte;
begin
clrscr;
Vvod(n,a);
clrscr;
writeln('Ishodnyj massiv:');
Vyvod(n,a);
UdalenieNolej(n,a);
Sort(n,a);
writeln('Rezultat:');
Vyvod(n,a);
readln
end.
nl:=n+2;{новая длина массива}
{posle}
for i:=nl-1 downto imax+1 do m[i]:=m[i-1];
m[imax+1]:=e1;
{pered}
for i:=nl downto imax do m[i]:=m[i-1];
m[imax]:=e2;
end;
var a:myarray;
   imax,n1:Integer;
begin
randomize;
Init2(A);
Max(A,imax);
writeln('number of max element=',imax);
writeln;
Insert(imax,n1,A);
Printl(n1,imax,A);
readln
end.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru