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

Перевод кода с Pascal

02.07.2014, 08:38. Показов 1591. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
uses crt;
const n = 17;
var
    arr: array[1..n] of integer;
    sum: integer;
    i: byte;
    k,d,e: integer;
 
begin
 
    sum := 0;
    for i := 1 to n do
    begin
        arr[i]:=random(90)+10;
        write (arr[i],' ');
     end;
    for i := 1 to n do
    begin
        d:=arr[i] div 10;
        e:=arr[i] mod 10;
        sum:=sum+d+e;
     end;
    writeln;
    writeln ('sum = ', sum);
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.07.2014, 08:38
Ответы с готовыми решениями:

Перевод кода с Pascal на C++
Помогите, пожалуйста, перевести задачу на C++ var sum, S, Mp, Ch: real; i, N: integer; begin writeln('Максимально разрешённый вес...

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

Перевод кода из Pascal/VB в C++
Помогите пожалуйста перевести код в С++. Сдавать уже скоро, и я никак не приложу ума как это все сотворить в С++ uses crt; ...

16
31 / 31 / 32
Регистрация: 21.06.2014
Сообщений: 81
02.07.2014, 11:22
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
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
    const int n=17;
    int arr[n];
    int i,k,d,e,sum;
    
    sum=0;
    for(i=0;i<n;i++)
    {
        arr[i]=rand()%90+10;
        cout<<arr[i]<<" ";
    }
    for(i=0;i<n;i++)
    {
        d=arr[i]/10;
        e=arr[i]%10;
        sum=sum+d+e;
    }
    cout<<endl;
    cout<<"sum= "<<sum<<endl;
 
    return 0;
}
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.07.2014, 11:29
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
#include <math>
#include <iostream>
#include <stdlib>
 
int main()
{
const n = 17;
 
int arr[n];
int sum;
char i;
int k,d,e;
 
 
    sum = 0;
    for( i=0; i<n; i++ )
      {
      arr[i] = rand()%90 + 10;
      std::cout << arr[i] << ' ';
      }
    for( i=0; i<n; i++ )
      {
      d = arr[i] / 10;
      e = arr[i] % 10;
      sum += d + e;
      }
    std::cout << std::endl;
    std::cout << "sum = " << sum;
 
 
std::cin.ignore(2);
return 0;
}
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
02.07.2014, 12:17
assasin21rus, у Вас что ни тема, то перевод с Паскаля ... пора бы уже основные концепции перевода освоить.

BatonPro, имхо не следует переводить код "один к одному", а по возможности учесть особенности C++. В частности:
1. Инициализировать переменные сразу при определении (например sum в 8 и 10 строках).
2. Переменную цикла всё же лучше задать локальной в самом цикле, т.е.
C++
1
for( int i=0; ...
3. То же самое относится к переменным d,e. Которые тоже следовало разместить только в том блоке, где они используются.
4. Переменная k вообще не используется. Нужно убрать.
5. А икремент суммы можно заимствовать из варианта SatanaXIII
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.07.2014, 14:37
Цитата Сообщение от Tulosba Посмотреть сообщение
А икремент суммы можно заимствовать из варианта SatanaXIII
Это наоборот мой косяк. Машинально переписал. Ведь так же, согласитесь, нагляднее будет для человека несведущего в плюсах понять какие функции отвечают за какие.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
02.07.2014, 14:43
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Ведь так же, согласитесь, нагляднее будет для человека несведущего в плюсах понять какие функции отвечают за какие.
Это если этот человек заинтересован в обучении, а ему, скорее всего, нужно просто лабу сдать. И он не шарит ни в паскале, ни в плюсах.
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
02.07.2014, 14:45
Объясните новичку, почему в коде никто не писал
C++
1
srand(time(NULL));
?
0
73 / 73 / 28
Регистрация: 06.10.2013
Сообщений: 334
02.07.2014, 15:00
Цитата Сообщение от Новичок Посмотреть сообщение
C++
1
srand(time(NULL));
Для генерации псевдослучайных чисел используется функция rand(). Она генерирует числа на основе базы. Если базу не менять, последовательность псевдослучайных чисел будет одна и та же. Для установки базы генератора псевдослучайных чисел служит функция srand(). Ее аргумент - и есть значение базы. Сочетание srand(time(NULL)) устанавливает в качестве базы текущее время. Этот прием часто используется для того, чтобы при разных запусках генератора псевдослучайных чисел была всякий раз разная база и, соответственно, разный ряд получаемых значений
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.07.2014, 15:03
Tulosba, ну мож кому-нибудь пригодится на будущее. А если ему не надо, то данный код и так вполне работоспособный вариант. Взятки гладки.

Новичок, ровно потому же, о чем мы с Tulosba разговариваем.
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
02.07.2014, 15:04
JavaUser, я это знаю. Но меня удивляет, что никто этого в коде не написал. Вот я и спрашиваю, так можно(т.е не писать srand(time(NULL)) )?

Добавлено через 30 секунд
SatanaXIII, т.е вы машинально переписывали и забыли?
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,863
02.07.2014, 15:05
JavaUser,
Новичок спрашивал не что такое srand(), а почему никто его не применил
Цитата Сообщение от Новичок Посмотреть сообщение
почему в коде никто не писал
отвечаю, а потому что на программах такого уровня, нафиг не нужно
сдал-отвалил
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
02.07.2014, 15:07
ValeryS, все ясно! Просто новички могут смотреть посты для примера и не правильно поймут.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
02.07.2014, 15:19
Цитата Сообщение от Новичок Посмотреть сообщение
Просто новички могут смотреть посты для примера и не правильно поймут
А "новички" это не только пользователи с ником Новичок, но и кто-то ещё?
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.07.2014, 15:19
Цитата Сообщение от ValeryS Посмотреть сообщение
отвечаю, а потому что на программах такого уровня, нафиг не нужно
Да ну нет. Просто в исходном коде я не увидел функции randomize, чтобы подменить ее соответствующей сишной.
Новичок, это же просто, можно сказать, машинный перевод, а не какой-нибудь реинженеринг.
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
02.07.2014, 15:22
Tulosba, это я и другие новички.
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,863
02.07.2014, 15:23
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Просто в исходном коде я не увидел функции randomize,
вот я и говорю
Цитата Сообщение от ValeryS Посмотреть сообщение
на программах такого уровня, нафиг не нужно
даже в исходнике не настраивали генератор
кстати, иногда srand() и вреден
при отладке лучше его выключать, а то трудно анализировать код
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
02.07.2014, 15:32
Цитата Сообщение от ValeryS Посмотреть сообщение
при отладке лучше его выключать, а то трудно анализировать код
Это факт. Хотя можно просто засевать его какой-нибудь константой.
На этот счет, вертаясь к теме тс, в паскале нагляднее было: кто догадается, что s в srand означает seed? А вот в паскакале была даже специально обученная переменная - RandSeed.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.07.2014, 15:32
Помогаю со студенческими работами здесь

Перевод кода с Pascal
var k,n,m:integer; x,s,p,t:real; begin repeat write('x&lt;&gt;0 x=');{х в знаменателе, исключаем заведомое деление на 0} readln(x);...

Перевод кода из Pascal в С++
Люди добрые прошу помочь в переписи кода из Pascal в С++, помогите пожалуйста !:cry: function st2(k:integer): integer; var j, rez:...

Перевод кода с Pascal на С++
uses crt; function Summ(n:longint):byte; var m:longint; s:byte; begin s:=0; m:=n; while m&gt;0 do begin s:=s+m mod...

Перевод кода с Pascal to c++
uses crt; const mf=500; type vector=array of real; var {раздел описания переменных, которые мы будем использовать в программе} ...

Перевод кода с Pascal в С++
Требуется перевести код на языке Pascal в С++ program ps; const n=10; var m: array of real; a: array of real;


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru