Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
2 / 2 / 1
Регистрация: 02.03.2010
Сообщений: 95
1

Перевести код с Pascal

22.04.2010, 21:57. Просмотров 1119. Ответов 1
Метки нет (Все метки)

нужно написать программу на C++ из паскаля

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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
program pr1;
uses crt;
const WG=100;
type tmasi=array[1..WG] of integer;
var a:tmasi; n,kl:byte;
(*процедура ввода*)
procedure pr_wod(kl:byte; var n:byte; var mas:tmasi);
var i:byte;
begin
clrscr;
    begin
                  writeln('введите размерность массива меньше или равная 100');
                  readln(n);
               end;
   (*контроль значения переменной*)
   while n>WG do
   begin
    clrscr;
     writeln('неверно,ds ввели больше 100');
     readln(n);
   end;
     if kl=1 then
     write (' вы не ввели элемент масива по этому он выбран автоматически ---->  ');
     randomize;
     for i:=1 to n do
     case  kl of
     1:mas[i]:=random(201)-100;
     2:begin
         writeln('введи ',i,' элемент массива');
         readln(mas[i]);
       end;
     end;
end;
(*процедура вывода*)
procedure pr_out(n:byte; mas:tmasi);
var i:byte;
begin
  for i:=1 to n do
  write(mas[i]:6);
  writeln;
end;
(*функция нахождения отр. элемента*)
function f_otr(n:byte; mas:tmasi):byte;
var i:byte;
begin
  f_otr:=0;
  for i:=1 to n do
  if mas[i]<0 then begin
                     f_otr:=i;
                     break;
                   end;
end;
(*функция нахождения суммы отр. элементов массива*)
function f_sum(n:byte; mas:tmasi):integer;
var i:byte; sum:integer;
begin
  sum:=0;
  for i:=1 to n do
  if mas[i]<0 then 
  sum:=sum+mas[i];
  f_sum:=sum;
end;
(*процедура работы с отрицательными элементами*)
procedure pr_otr_el(n:byte;var a:tmasi);
var i,j,pos:byte; sum:integer;
begin
  pos:=f_otr(n,a);
  if pos=0 then begin
                  writeln('В массиве отсутствуют отрицтельные элементы');
                  end;
  sum:=f_sum(n,a);
  for i:=1 to pos-1 do
  a[i]:=sum;
  writeln('Первый отрицательный элемент- ',a[pos]);
  writeln('Сумма отрицательных элементов- ',sum);
  writeln('Массив переформирован');
  end;
begin
clrscr;
  while true do
  begin
 
    repeat
    writeln('1- создать массив из целых чисел;');
    writeln('2- вывод элементов одномерного массива;');
    writeln('3- работа с отрицательными элементами массива;');
    writeln('4- конец работы.');
    readln(kl);
    case kl of
    1:begin
       clrscr;
        pr_wod(2,n,a);
        ClrScr;
        writeln('Массив введен');
      end;
    2:begin
    clrscr;
      if n=0 then begin
                  pr_wod(1,n,a);
                  end;
      writeln(' Массив ');
      pr_out(n,a);
      end;
    3:begin
      clrscr;
          pr_otr_el(n,a);
          writeln('Пункт выполнен');
          writeln;
      end;
    4:begin writeln('пока');readln; end;
 
    end;
    until kl in [1..4];
     end;
 
end.
Добавлено через 23 часа 58 минут
напишите пожалуйста
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2010, 21:57
Ответы с готовыми решениями:

Перевести код с Pascal на C# и C++
Помогите переписать прогу с одного языка на другой. Вот Pascal const maxn = 150; var w:...

Перевести код с C++ в Pascal
#include &lt;iostream&gt; #include &lt;cmath&gt; #include &lt;vector&gt; #include &lt;numeric&gt; using namespace...

Перевести код из Pascal в С++
Всем привет! Нужно срочно сделать задачку, условие такое: &quot;Вычислить приближенное значение...

Перевести код с Pascal
код for i:=1 to length(num_st)do begin num_st:=upcase(num_st); if num_st in then...

1
167 / 94 / 11
Регистрация: 16.04.2010
Сообщений: 464
23.04.2010, 01:12 2
Лучший ответ Сообщение было отмечено Юляшко как решение

Решение

Сейчас переведу синтаксис, код оставлю таким же

Добавлено через 2 часа 21 минуту
вобщем код есть, компилиться. работу проверяйте сами

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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#include "stdafx.h"
#include <time.h>
#include <stdlib.h>
 
# define WG 100
 
 
struct tmasi 
{
    int massiv[WG];
}a,mas;
int n,kl;
 
//procedure of input
void pr_wod(int kl,int n, tmasi mas)
{
int i;
 
system("cls");
    {
    printf("pls enter dimension of file, less or equal 100\n");
    scanf("%d", &n);
    }
    //control the value of variable
    while (n>WG)
    {
    system("cls");
    printf("\ninvalid, entered ds more 100\n");
    scanf("%d", &n);
    }
if (kl==1) printf("\nYou are not entered element of file, because it is auto value\n");
srand((unsigned) time(NULL));
for (i=1;i<(n+1);i++)
    switch(kl)
    {
        case 1:mas.massiv[i]=rand()%201-100;break;
        case 2:{
            printf("pls enter %d element of file\n", i);
            scanf("%d", &mas.massiv[i]);
            };break;
    }
}
 
//procedure of output
void pr_out(int n, tmasi mas)
{
    int i;
    for (i=1;i<(n+1);i++)
        printf("%6d\n",mas.massiv[i]);
            
}
 
//function of search negative element
int f_otr(int n, tmasi mas)
{
int i, result=0;
for (i=1;i<(n+1);i++)
    if (mas.massiv[i]<0) 
    {
    result=i;
    break;
    }
return result;
}
 
//function calculate of sum negative elevents of file
int f_sum(int n, tmasi a)
{
int i,sum=0;
for(i=1;i<(n+1);i++)
    if (mas.massiv[i]<0) sum+=mas.massiv[i];
return sum;
}
 
//function of work with negative elements
void pr_otr_el(int n, tmasi a)
{
int i,j,pos,sum;
pos=f_otr(n,a);
if (pos==0)
    {
        printf("\nIn file absent negative elements\n");
    }
sum=f_sum(n,a);
for (i=1;i<pos;i++)
    a.massiv[i]=sum;
printf("First negative element - %d\n",a.massiv[pos]);
printf("Sum of negative elements - %d\n", sum);
printf("File if reform\n");
}
 
 
 
int _tmain(int argc, _TCHAR* argv[])   
{
 
system("cls");
while (1)
{
    do
    {
        printf("1 - create file of integer numbers\n");
        printf("2 - Output elements of one-dimensional file\n");
        printf("3 - Work with negative elements of file\n");
        printf("4 - End of work\n");
        scanf("%d", &kl);
        switch (kl)
        {
            case 1:
            {
                system("cls");
                pr_wod(2,n,a);
                system("cls");
                printf("File is input\n");
            }break;
            case 2:
            {
                system("cls");
                if (n==0)
                {
                    pr_wod(1,n,a);
                }
                printf("File\n");
                pr_out(n,a);
            }break;
            case 3:
            {
                system("cls");
                pr_otr_el(n,a);
                printf("point is executed\n\n");
            }break;
            case 4:
            {
                printf("bye");getchar();
            }break;
        }
    }while ((kl>=1)&&(kl<=4));
}
return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2010, 01:12

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Перевести код из Pascal на C++
Нужно произвести удаление узла из сбалансированного дерева. В С++ я не бум-бум, помогите...

Перевести код с Pascal
var m,n,i,k: longint; flag: boolean; begin writeln('vvod m&gt;3'); readln(m); write(' ...

Перевести код с С++ в С и Pascal
кароч люди мну дали задание....... мну нада перевести з одного с(си) в другой с(си) и потом в...

Перевести код с Pascal на C++
Здравствуйте, дана задача : &quot;Последовательность Фибоначчи образуется так: первый и второй члены...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.