Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
3 / 3 / 0
Регистрация: 28.01.2013
Сообщений: 51

Перевод кода с языка Pascal на C++

27.05.2022, 11:12. Показов 596. Ответов 3

Студворк — интернет-сервис помощи студентам
Добра, уважаемые программисты!

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

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
Program Ex2;
Var
  i,j,k,N,M: Integer;
  A: Array[1..100] Of Integer;
  Flag: Boolean;
Begin
  ReadLn(N,M);
  For i:= 1 To N Do
    ReadLn(A[i]);
  Flag:=False;
  i:=0;
  While Not Flag And (i<N) Do
    Begin
      i:=i+1;
      j:=0;
      While Not Flag And (j<N) Do
        Begin
          j:=j+1;
          k:=0;
          While Not Flag And (k<N) Do
            Begin
              k:=k+1;
              Flag:=(A[i]+A[j]+A[k]=M) And (i<>j) And Not(i=k) And (j><k);
            End;
        End;
    End;
  If Flag
    Then WriteLn(i,j,k)
    Else WriteLn('Нет решения');
  ReadLn;
End.
Контрольный пример
N=3
M=6
A={2,1,3}

Постарался переписать. Совершенно не понимаю, что значит на 23ей строчке данная запись:
Pascal
1
Flag:=(A[i]+A[j]+A[k]=M) And (i<>j) And Not(i=k) And (j><k);
А конкретно:
Pascal
1
2
3
A[i]+A[j]+A[k]=M
 
(j><k)
Мой код на С++
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
#include <iostream>
 
using namespace std;
 
int main()
{
    int i, j, k, N, M;
    
    bool Flag;
 
    cin >> N;
    cin >> M;
 
    int* A = new int[N];
    
    for (i = 0; i < N; i++)
        cin >> A[i];
 
    Flag = false;
    i = 0;
 
    while (!Flag && i < N)
    {
        i = i + 1;
        j = 0;
        while (!Flag && j < N)
        {
            j = j + 1;
            k = 0;
            while (!Flag && k < N)
            {
                k = k + 1;
                M = A[i] + A[j] + A[k];
                Flag = M && (i != j) && !(i == k) && ((j / k) || (j / k));
            }
        }
    }
    if (Flag)
    {
        cout << i << " " << j << " " << k << endl;
    }
    else
    {
        cout << "Нет решения" << endl;
    }
}
Подскажите где я ошибся и получается ли у вас результат из контрольного примера? При возможности подскажите условие =)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.05.2022, 11:12
Ответы с готовыми решениями:

Перевод кода с языка Pascal на C++
Доброго времени суток всем. Дабы не плодить темы, также отпишусь здесь: необходимо перевести код паскаля на С, С++ ил С#, любой из них. В...

Перевод с языка Pascal на С
вот так program prost; var a,i,m:integer; begin readln(A); for i:=1 to a do if a mod i =0 then m:=m+1; if (m=2) or (a=1)...

Перевод с языка Pascal на С++
uses crt; var a, f: integer; k1, k2: word; sum: longint; begin clrscr; write ('введите значение параметра f: '); ...

3
Злостный нарушитель
 Аватар для Verevkin
10358 / 5773 / 1274
Регистрация: 12.03.2015
Сообщений: 26,673
27.05.2022, 12:49
Цитата Сообщение от SkyJammer Посмотреть сообщение
При возможности подскажите условие
То есть у тебя нету условия задачи, штоли?
0
3 / 3 / 0
Регистрация: 28.01.2013
Сообщений: 51
27.05.2022, 13:08  [ТС]
Верно.
0
Злостный нарушитель
 Аватар для Verevkin
10358 / 5773 / 1274
Регистрация: 12.03.2015
Сообщений: 26,673
27.05.2022, 13:11
Цитата Сообщение от SkyJammer Посмотреть сообщение
Верно.
Задача без условия не имеет смысла.
Я смотрю на паскалевский исходник и не понимаю, для решения какой задачи он написан.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.05.2022, 13:11
Помогаю со студенческими работами здесь

Перевод с языка Pascal на С++
Ребята есть программа ее нужно перевести из Паскаля в с++ Не шарю я в с хоть убей помогите пожалуйста program algoritm; var x: integer;...

Перевод с языка Pascal на С++
Код: uses crt; var a,i,n,step:integer; begin clrscr; write('a='); readln(a); write('n='); readln(n); if n=0...

Перевод с языка Pascal на C
var f,g:text; j,k:integer; s:string; begin assign(f, 'c:\inp.txt'); reset(f); While not Eof(f) do Begin readln(f,s);

Перевод с языка Pascal на С++
uses crt; Var A:array of integer; i,p:integer; Begin Writeln('Введите два одинаковых и одно отличное число'); ...

Перевод кода с языка Pascal на C++
Здравствуйте. Можете мне помочь перевести данный код с паскаля на С++. Пробовал искать компиляторы так и не получилось. Program df; ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru