Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.03.2012, 18:37   #1
Ilepekyp
 
Аватар для Ilepekyp
 
Регистрация: 18.05.2010
Сообщений: 6
Вопрос Массивы. Перевод кода из Pascal в C++

Здравствуйте. Прощу помочь в переводе кода из Pascal в С++. 1 и 2 программы на Паскале делают одно и то же разными методами, хотелось бы посмотреть на их вид в С++, достаточно одной из них.

Вот собственно они:
1)
Код:
Const
N=2;
M=3;
var
A : array[1..N,1..M] of Char;
B: array[1..255] of Byte;
i,j:integer;
begin
for i:=1 to N do
begin
for j:=1 to M do
begin
Write('Введите символ ');
Readln(A[i,j]);
B[ord(A[i,j])]:=B[ord(A[i,j])]+1;
end;
end;
j:=0;
for i:=1 to 255 do
begin
if B>0 then
begin
Writeln('Символ ',chr(i),' встречается ',B,' раз.');
j:=j+1;
end;
end;
writeln;
writeln('Количество различных символов - ',j);
end.
2)
Код:
const
NN=10; // Например
MM=15;

type
Digit = set of Char;
var
A: array [1..NN,1..MM] of Char;
N,M,I,J,K: Integer;
S: Digit;

begin
Write('Введите N и M');
ReadLn(N,M);
WRiteLn('Введите матрицу');
for I:=1 to N do
begin
for J:=1 to M do
begin
Read(A[I,J]);
if A[I,J]=' ' then Read(A[i,j]);
end;
ReadLn;
end;
S:=[];
K:=0;
for I := 1 to N do
for J := 1 to M do
if not(A[i,j] in S) then
S:=S+[A[I,j]]
else
K:=K+1;
WriteLn('K=',K);
ReadLn;
end.
Ilepekyp вне форума Ответить с цитированием
Старый 09.03.2012, 20:26   #2
Juffin
Форумчянин
Форумчанин
 
Аватар для Juffin
 
Регистрация: 05.04.2009
Сообщений: 446
По умолчанию

первая:
Код:
#include <stdio.h>
#define N 2
#define M 3

int main()
{
   char A[N][M];
   char B[255];
   int i,j;

   for (i=0;i<N;i++)
      for (j=0;j<M;j++)
      {
          printf("Введите символ");;
          scanf("%c",&A[i][j]);
          B[A[i][j]]=B[A[i][j]]+1;
      }

   j=0;
   for (i=0;i<255;i++)
      if (B[i]>0)//видимо тут имелось в виду B[i], а не B
      {
          Printf("Символ %c встречается %d раз\n",i,B[i]);//и тут тоже
          j++;
      }
   printf("\nКоличество разных символов - %d",j);
}
255;i++)
if (B[i]
Nobody expects Spanish Inquisition!
Juffin вне форума Ответить с цитированием
Старый 09.03.2012, 23:42   #3
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,365
По умолчанию

Вы еще долго будете кросспостингами страдать?
Для чего плодите свою тему в каждом разделе? Чтоб быстрее насобирать штрафов на бан? Дык я завсегда рада помочь.
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод кода из Pascal в C++ Kerragin Помощь студентам 5 13.12.2011 07:54
Перевод кода с Pascal в Delphi Rin Общие вопросы Delphi 5 09.01.2011 01:39
Перевод кода с Java на Pascal Warfvare Помощь студентам 4 19.06.2010 08:38
Перевод кода из Pascal в Object Pascal zemskov77 Общие вопросы Delphi 1 03.01.2009 09:37