2 / 2 / 4
Регистрация: 05.11.2016
Сообщений: 64
1

Переведите пожалуйста код с Паскаля на СИ++

14.06.2018, 08:53. Показов 1079. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите перенести код на СИ++... До этого не приходилось работать с паскалем(
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
program pokrytie;
type
    pa = array[1..30000] of integer;
var
    n, m, g : integer;
    i, j, k, imin, min : integer;
    a, b : ^pa;
    res : array[1..10000] of integer;
    Inp, Out : Text;
 
begin
    Assign(Inp,'Input.txt');
    Reset(Inp);
    Readln(Inp,m);
    Readln(Inp,n);
    New(a); New(b);
    for i := 1 to n do begin
        Read(Inp,a^[i]);
        Read(Inp,b^[i]);
    end;
    Close(Inp);
    Assign(Inp,'Output.txt');
    ReWrite(Inp);
    k := 0; g := 0; min := -1;
    while g < m do begin
        for i := 1 to n do if a^[i] <= g then begin
            if b^[i] > min then begin
                min := b^[i];
                imin := i;
            end
        end;
        if min > 0 then begin
            g := min;
            Inc(k);
            res[k] := imin;
        end
        else begin
            Write(Inp,0);
            Close(Inp);
            Halt;
        end;
    end;
    WriteLn(Inp,k);
    for i := 1 to k do begin
        WriteLn(Inp,a^[res[i]],' ',b^[res[i]]);
    end;
    Close(Inp);
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.06.2018, 08:53
Ответы с готовыми решениями:

переведите, пожалуйста, код паскаля в с++
Вот, добрые люди, само задание: заданной и действительной квадратной матрицы порядка n найти сумму...

Пожалуйста переведите код с Паскаля
Дан массив целых чисел (n=10), заполненный случайными числами из промежутка . 1. удалить из него...

Переведите, пожалуйста код с Паскаля на QBasic
uses crt; var s,sl,sc: string; i,k: integer; begin write('Введите текст '); readln(s);...

Пожалуйста переведите код матрицы с паскаля на C#
пожалуйста переведите с паскаля на си шарп program abc; var a:arrayof integer; ...

4
186 / 171 / 93
Регистрация: 13.06.2018
Сообщений: 708
14.06.2018, 09:11 2
Цитата Сообщение от Mentalist_ Посмотреть сообщение
'Input.txt'
в наличии ?
0
2 / 2 / 4
Регистрация: 05.11.2016
Сообщений: 64
14.06.2018, 09:56  [ТС] 3
Пример INPUT.TXT:
8
3
-1 7
-2 9
6 8

Добавлено через 2 минуты
OUTPUT.TXT для примера:
1
-2 9

Добавлено через 6 минут
Могу кинуть текст задания может поможет
0
186 / 171 / 93
Регистрация: 13.06.2018
Сообщений: 708
14.06.2018, 10:26 4
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
void main(int argc,char **argv)
{
    fstream Inp("Input.txt",ios_base::in);
    int m,n;
    Inp>>m;
    Inp>>n;
    int *a=new int[30000]; 
    int *b=new int[30000];
    for(int i=0; i<n; i++)
    {
        Inp>>a[i];
        Inp>>b[i];
    }
    Inp.close();
    Inp.open("Output.txt",ios_base::out);
    Inp.clear();
    int k=0; 
    int g=0; 
    int imin,min=-1;
    int res[10000];
    while(g < m)
    {
        for(int i=0; i<n; i++)
        if(a[i]<=g)
            if(b[i]>min)
            {
                min=b[i];
                imin=i;
            }
        if(min>0)
        {
            g=min;
            res[k++]=imin;
        }
        else
        {
            Inp<<0;
            Inp.close();
            return;
        }
    }
    Inp<<k<<endl;
    for(int i=0; i<k; i++)
        Inp<<a[res[i]]<<" "<<b[res[i]]<<endl;
    Inp.close();
    delete[] a;
    delete[] b;
    //system("pause");
}
1
243 / 268 / 219
Регистрация: 14.11.2016
Сообщений: 1,043
14.06.2018, 10:59 5
Лучший ответ Сообщение было отмечено Mentalist_ как решение

Решение

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
#include <iostream>
#include <fstream>
 
int a[30000]{}, b[30000]{};
int res[10000]{};
 
int main()
{
    std::fstream file{ "input.txt", std::ios_base::in };
    if (!file.is_open())
    {
        std::cerr << "File not found!" << std::endl;
        return -1;
    }
    int m{}, n{};
    file >> m >> n;
    for (int i{}; i < n; ++i)
    {
        file >> a[i] >> b[i];
    }
    file.close();
    int k{}, g{}, min{ -1 }, imin{};
    file.open( "output.txt", std::ios_base::out | std::ios_base::trunc);
    while (g < m)
    {
        for (int i{}; i < n; ++i)
        {
            if (a[i] <= g)
            {
                min = b[i];
                imin = i;
            }
        }
        if (min > 0)
        {
            g = min;
            res[k++] = imin;
        }
        else
        {
            file << 0;
            return 0;
        }
    }
    file << k << std::endl;
    for (int i{}; i < k; ++i)
    {
        file << a[res[i]] << ' ' << b[res[i]] << std::endl;
    }
}
1
14.06.2018, 10:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.06.2018, 10:59
Помогаю со студенческими работами здесь

Переведите, пожалуйста код с Паскаля на QBasic и отредактируйте код под условие задачи
Ниже расположено условие задачи. Даны натуральное число m, целые числа {a}_{l},...,{a}_{lm} и...

Переведите с Паскаля на Си пожалуйста
Var *ar:array of integer; *i,n,k:integer; *b:boolean; begin randomize; *k:=1; *b:=false;...

Переведите, пожалуйста, с паскаля на C++
type Person = record Surname, Name, Adress, ...

переведите с Паскаля на си++ пожалуйста!
в Паскале получается...а в СИ++ нет( procedure Mean(x,y:real; var AMean,GMean:real); begin...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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