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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Antikiller3001
Сообщений: n/a
#1

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

12.05.2013, 13:17. Просмотров 472. Ответов 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
32
var p:array[1..1000] of integer; 
 c,c1:char; 
 i,j,N,K:integer; 
 name:string; 
 time1,time2:integer; 
begin 
 readln(N,K); 
 for i:=1 to K do 
 p[i]:=0; 
 for i:=1 to N do 
 begin 
 name:=''; 
 repeat 
 read(c); 
 name:=name+c 
 until c=' '; {считана фамилия} 
 read(c,c1); {считаны часы первого времени} 
 time1:=60*((ord(c)-ord('0'))*10+ ord(c1)-ord('0')); 
 read(c,c,c1); {пропущено двоеточие, и считаны минуты} 
 time1:=time1+(ord(c)-ord('0'))*10+ord(c1)-ord('0'); 
 read(с,c,c1); {считаны часы второго времени} 
 time2:=60*((ord(c)-ord('0'))*10+ ord(c1)-ord('0')); 
 readln(c,c,c1); {пропущено двоеточие, и считаны минуты} 
 time2:=time2+(ord(c)-ord('0'))*10+ord(c1)-ord('0'); 
 for j:=1 to K do 
 if p[j]<=time1 then 
 begin 
 p[j]:=time2; 
 writeln(name,' ',j); 
 break; 
 end; 
 end;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2013, 13:17     Перевод из паскаля в с ++
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Somebody
2776 / 1590 / 142
Регистрация: 03.12.2007
Сообщений: 4,164
Завершенные тесты: 1
12.05.2013, 14:08     Перевод из паскаля в с ++ #2
Напиши, что за задание. А то тут, например, непонятно, зачем вообще под p массив.
Antikiller3001
Сообщений: n/a
12.05.2013, 15:44     Перевод из паскаля в с ++ #3
На вход программе подаются сведения о пассажирах, желающих сдать свой
багаж в камеру хранения на заранее известное время до полуночи. В первой
строке сообщается число пассажиров N, которое не меньше 3, но не
превосходит 1000; во второй строке – количество ячеек в камере хранения K,
которое не меньше 10, но не превосходит 1000. Каждая из следующих N
строк имеет следующий формат:
<Фамилия> <время сдачи багажа> <время освобождения ячейки>,
где <Фамилия> – строка, состоящая не более чем из 20 непробельных
символов; <время сдачи багажа> – через двоеточие два целых числа,
соответствующие часам (от 00 до 23 – ровно 2 символа) и минутам (от 00 до
59 – ровно 2 символа); <время освобождения ячейки> имеет тот же формат.
<Фамилия> и <время сдачи багажа>, а также <время сдачи багажа> и <время
освобождения ячейки> разделены одним пробелом. Время освобождения
больше времени сдачи.
Сведения отсортированы в порядке времени сдачи багажа. Каждому из
пассажиров в камере хранения выделяется свободная ячейка с минимальным
номером. Если в момент сдачи багажа свободных ячеек нет, то пассажир
уходит, не дожидаясь освобождения одной из них.
Требуется написать программу (укажите используемую версию языка
программирования, например Borland Pascal 7.0), которая будет выводить на
экран для каждого пассажира номер ему предоставленной ячейки (можно
сразу после ввода данных очередного пассажир
Somebody
2776 / 1590 / 142
Регистрация: 03.12.2007
Сообщений: 4,164
Завершенные тесты: 1
12.05.2013, 20:00     Перевод из паскаля в с ++ #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
#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{
    int n, k;
    cin >> n >> k;
    cin.get();
    int p[1000] = {0};
    for (int i = 0; i < n; i++)
    {
        string name;
        int h, m, time1, time2;
        cin >> name;
        cin >> h; cin.get(); cin >> m;
        time1 = h * 60 + m;
        cin >> h; cin.get(); cin >> m;
        time2 = h * 60 + m;
        cin.get();
        for (int j = 0; j < k; j++)
        {
            if (p[j] <= time1)
            {
                p[j] = time2;
                cout << name << ' ' << j << endl;
                break;
            }
        }
    }
}
Yandex
Объявления
12.05.2013, 20:00     Перевод из паскаля в с ++
Ответ Создать тему
Опции темы

Текущее время: 20:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru