Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/41: Рейтинг темы: голосов - 41, средняя оценка - 4.61
29 / 28 / 7
Регистрация: 10.07.2009
Сообщений: 317

Конвертация кода Pascal на C++

25.12.2010, 10:22. Показов 7568. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, нужна помощь, у меня есть такой код:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var chosenDir:string;
  fs: tSearchRec;
dbq : String;
begin
  if SelectDirectory('Выберите каталог','', chosenDir)
  then
 
    begin
 
      if (FindFirst(chosenDir+'\*.dbf', faAnyFile, fs)=0)
      then
      repeat
       dbq :=chosenDir;
       //DefaultDir := chosenDir;
        FindNext(fs);
 
    until FindNext(fs)<>0;
 
    end;
end.
этот код вызывает окно обзора папок и и запоминает выбор в переменную (по заданному формату), хотелось бы знать как этот же код реализуется в C++, или может есть какие то встроенные средства для вызова подобного окна обзора?

P.S. Пишу на RAD STUDIO 2009
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.12.2010, 10:22
Ответы с готовыми решениями:

Конвертация кода Pascal на C++
Приветствую! Люди добрые помогите перегнать из Pascal в C++.

Конвертация кода Pascal на C++
Здравствуйте, нужно конвертировать код из Паскаля в С++. задание со строками, как его делать понятия не имею. все что в инете нашла -...

Конвертация кода из с++ в java
Доброго времени суток. Перейду сразу к сути. Я затеял перевод кода из c++ в java, код простой, думал, что труда мне это не составит, однако...

2
29 / 28 / 7
Регистрация: 10.07.2009
Сообщений: 317
26.12.2010, 15:48  [ТС]
Лучший ответ Сообщение было отмечено _arty_ как решение

Решение

решение нашёл:

C++
1
2
3
4
5
6
7
8
#include <FileCtrl.hpp>
const SELDIRHELP = 1000;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  AnsiString Dir = "C:\\Program Files\\MyApp";
  if (SelectDirectory(Dir, TSelectDirOpts() << sdAllowCreate << sdPerformCreate << sdPrompt,SELDIRHELP))
    Label1->Caption = Dir;
}
0
0 / 0 / 0
Регистрация: 14.05.2017
Сообщений: 1
01.10.2017, 19:22
PROGRAM LAB2;
Uses Crt,Graph;

const Path_of_driver='C:\TP7\BGI';
{описание класса точки}
Type
tPoint = object
x, y: integer;
color: word;
{вывод на экран}
procedure Draw;
{закрасить цветом фона}
procedure Hide;
{перемещение точки}
procedure Move(newX, newY:Integer);
{установка х}
procedure setX(x0:Integer);
{установка у}
procedure setY(y0:Integer);
{установка цвета}
procedure setColor(color0 : Word);
{функции получения координат}
function getX : Integer;
function getY : Integer;
end;

procedure tPoint.setX(x0 : Integer);
begin
x:=x0;
end;

procedure tPoint.setY(y0 : Integer);
begin
y:=y0;
end;
procedure tPoint.setColor(color0 : Word);
begin
color:=color0;
end;
function tPoint.getX;
begin
getX:=x;
end;
function tPoint.getY;
begin
getY:=y;
end;

procedure tPoint.Draw;
begin
putPixel(x,y,color);
end;

procedure tPoint.Hide;
begin
putPixel(x,y,GetBkColor);
end;
procedure tPoint.Move(newX, newY : Integer);
begin
Hide;
setX(newX);
setY(newY);
Draw;
end;
{процедура расчета новых координат по нажатой клавише}
Procedure Coords(a:char; var NewX,NewY:integer; h:integer);
begin
case a of
#80: begin
Inc(NewY,h); if NewY>GetMaxY-20 then NewY:=20;
end;
#75: begin
dec(NewX,h); if NewX<10 then NewX:=GetMaxX-10;
end;
#77: begin
inc(NewX,h); if NewX>GetMaxX-10 then NewX:=10;
end;
#72: begin
dec(NewY,h); if NewY<20 then NewY:=GetMaxY-20;
end;
end;
end;

var
mas: array [1..100] of tPoint; {массив точек}
gd,gm,NewX,NewY,i, h: integer;
Q,a:char;
str:string;
NewColor : Word;

begin
randomize;
{инициализация графического режима}
gd:=Detect;
InitGraph(gd,gm,Path_of_driver);
if GraphResult<>grok then begin
write('error:',GraphErrorMsg(GraphResult ));
halt;
end;
{установка свойств всех точек в массиве – случайные значения}
for i:=1 to 100 do
begin
NewX:=Random(GetMaxX);
NewY:=Random(GetMaxY);
NewColor:=Random(256);
mas[i].setX( NewX);
mas[i].setY(NewY);
mas[i].setColor(NewColor);
mas[i].Draw;
end;
h:=50; {расстояние, на которое перемещается точка}
RestoreCrtMode; {текстовый режим}
Q:='y';
While Q<>'n' do begin
write('Выберите режим движения точек: 1 (случайное движение)');
write (' 2 (движение по стрелкам клавиатуры): ');
readln(str); {пользователь вводит символ}
{случайное движение}
if str='1' then
begin
SetGraphMode(gm);
repeat
for i:=1 to 100 do
begin
{новые случайные координаты}
NewX:=Random(GetMaxX);
NewY:=Random(GetMaxY);
mas[i].Move(NewX,NewY);
end;
delay(10000); {задержка}
until keypressed; {пока не нажата клавиша}
end
else
{движение по стрелкам}
begin
writeln('Нажмите Enter');
writeln('Управляйте движением точек с помощью стрелок клавиатуры');
readln;
SetGraphMode(gm);
{вывод массива точек}
for i:=1 to 100 do
mas[i].Draw;
repeat
a:=readkey;
for i:=1 to 100 do
begin
{получаем текущие координаты}
newX:=mas[i].getX;
newY:=mas[i].getY;
{новые координаты, куда передвинется точка}
Coords(a,NewX,NewY,h);
{передвижение точки}
mas[i].Move(NewX,NewY);
end;
until a=#27; {пока не нажата escape}
end;
RestoreCrtMode;
write('Продолжить? (y/n) ');
readln(Q);
end;
closegraph;
clrscr;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.10.2017, 19:22
Помогаю со студенческими работами здесь

Конвертация кода из С++ в Java
Помогите пожалуйста с переводом кода из с++ в Java. В Java не разбираюсь к сожалению. Заранее спасибо. #include &lt;stddef.h&gt; ...

Конвертация кода из паскаля в С++
Доброго времени суток!!! не могу сделать вывод программы на с++ из кода паскаль uses crt; var k,b,r:real; a,b1,c,d:real; ...

Перевод кода с Pascal
uses crt; const n = 17; var arr: array of integer; sum: integer; i: byte; k,d,e: integer; begin

Перевод кода из Pascal в C++
Помогите перевести этот код с Pascal ABC на C++ : uses crt; var N: integer; a: array of integer; begin readln(N); a := 2;...

Перевод кода с Pascal
Переведите, пожалуйста, код с Pascal на C++ const maxn = 10; var n: integer; a: array of integer; used: array of Boolean; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru