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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.04.2010, 21:29   #1
Юляшко
Пользователь
 
Регистрация: 21.04.2010
Сообщений: 24
По умолчанию нужно написать программу на С++ из паскаля

PHP код:
program pitnad//программа вычесляет суммарную оценку и находит победителя
uses crt;
const 
n=3;
type  rec=record
      name
,str:string;
      
oc1,oc2:integer;
      
sum:integer;
     
end;
var 
x:array[1..nof rec;
    
i:integer;
    
max:integer;
    
k,stran:string;
begin
ClrScr
;
for 
i:=1 to n do
 
begin
  Write
(' Имя: ');
  
Readln(x[i].name);
  
Write(' Странна: ');
  
Readln(x[i].str);
  
Write(' оценка 1: ');
  
Readln(x[i].oc1);
  
Write(' оценка 2: ');
  
Readln(x[i].oc2);
  
writeln;
 
end;
 
clrscr;
Writeln('Таблица: ');
for 
i:=1 to n do
 
x[i].sum:=x[i].oc1+x[i].oc2;
Writeln('----------------------------------------------------');
Writeln('||  иМя    |  Страна  | оценка 1| оценка 2| сумма ||');
Writeln('----------------------------------------------------');
for 
i:=1 to n do
 
Writeln('||',x[i].name:9,'|',x[i].str:11,'|',x[i].oc1:9,'|',
          
x[i].oc2:8,'|',x[i].sum:7,'||');
Writeln('----------------------------------------------------');
max:=x[1].sum;
for 
i:=1 to n do
 if 
x[i].sum>max then
  begin
  max
:=x[i].sum;
  
k:=  x[i].name;
  
end;
  
writeln('Чемпионы, набравшие максимальное количество очков:');
  for 
i:=1 to n do
  if 
x[i].sum=max then
  Writeln
('||',x[i].name:9,'|',x[i].sum:7,'||');
end
Юляшко вне форума Ответить с цитированием
Старый 29.04.2010, 21:42   #2
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

А что сами? Не понимаете С++?
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 29.04.2010, 21:55   #3
Юляшко
Пользователь
 
Регистрация: 21.04.2010
Сообщений: 24
По умолчанию

к сжоление очень плохо понимаю....мы еще толком не проходили
Юляшко вне форума Ответить с цитированием
Старый 30.04.2010, 02:03   #4
coNsept
Форумчанин
 
Аватар для coNsept
 
Регистрация: 14.12.2009
Сообщений: 716
По умолчанию

Писал на скорую руку мож где и не правильно

Код:
typedef struct REC
{
    char Name, Str;
    int oc1, oc2;
    int Sum;
}; 

const int n = 3;

void main()
{
    REC sRec;

    clrscr();

    REC X[100];
    int i, Max;
    char k, Stran;

    for (i = 0; i < n; i++)
    {
        printf("Имя:"); scanf("%s", &X[i].Name);
        printf("Страна:"); scanf("%s", &X[i].Str);
        printf("Оценка 1:"); scanf("%d", &X[i].Oc1);
        printf("Оценка 2:"); scanf("%d", &X[i].Oc2);
    }

    printf("\n");
    
    printf("Таблица:\n\n");

    for (i = 0; i < n; i++)
    {
        printf("----------------------------------------------------\n");
        printf("||  иМя    |  Страна  | оценка 1| оценка 2| сумма ||\n");
        printf("----------------------------------------------------\n");
        printf("|| %d | %d | %d | %d | %d | ||\n", X[i].Name, X[i].Str, X[i].Oc1, X[i].Oc2, X[i].Sum);
        printf("----------------------------------------------------\n");
    }

    Max = X[1].Sum;

    for (i = 0; i < n; i++)
    {
        if (X[i].Sum > Max)
        {
            Max = X[i].Sum;
            k = X[i].Name;
        }
    }

    printf("Чемпионы, набравшие максимальное количество очков:\n");

    for (i = 0; i < n; i++)
    {
        if (X[i].Sum == Max)
        {
            printf("|| %d | %d ||", X[i].Name, X[i].Sum);
        }
    }
}

Последний раз редактировалось coNsept; 30.04.2010 в 02:54.
coNsept вне форума Ответить с цитированием
Старый 30.04.2010, 10:02   #5
Юляшко
Пользователь
 
Регистрация: 21.04.2010
Сообщений: 24
Печаль

извиняюсь....а вот это вписывать нужно?
#include "stdafx.h"
#include <time.h>
#include <stdlib.h>
Юляшко вне форума Ответить с цитированием
Старый 30.04.2010, 10:13   #6
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

да нужно, а еще #include <iostream>

Последний раз редактировалось NiCola999; 30.04.2010 в 10:30.
NiCola999 вне форума Ответить с цитированием
Старый 30.04.2010, 10:30   #7
[CODER]
Форумчанин
 
Аватар для [CODER]
 
Регистрация: 02.02.2010
Сообщений: 305
По умолчанию

В начале надо включить библиотеки
Код:
#include "iostream.h"
Удали typedef это не то.
char массив символов так что
Код:
struct REC
{
    char Name[99], Str[99];
    int oc1, oc2;
    int Sum;
};
В С/С++ консоль очищается перед запуском так что clrscr(); не надо
и в конце добавь
system("pause");
P.S. Смотрел только синтаксис
Skype: CODERua
[CODER] вне форума Ответить с цитированием
Старый 30.04.2010, 10:36   #8
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

вот так работает, правдо не совсем так как надо)
Код:
#include <iostream>
#include <windows.h>
#include <stdlib.h>
using namespace std;

char* Rus(char*);

struct REC
{
    char Name[100], Str[100];
    int oc1, oc2;
    int Sum;
}; 

const int n = 1;

int main(void)
{
    REC sRec;
    system("cls");

    REC X[n];
    int i, Max;
    char *k = "", *Stran = "";

    for (i = 0; i < n; i++)
    {
        cout << Rus("Имя:"); scanf("%s", &X[i].Name);
        cout << Rus("Страна:"); scanf("%s", &X[i].Str);
        cout << Rus("Оценка 1:"); scanf("%d", &X[i].oc1);
        cout << Rus("Оценка 2:"); scanf("%d", &X[i].oc2);
    }

    printf("\n");
    
    cout << Rus("Таблица:\n\n");

    for (i = 0; i < n; i++)
    {
        printf("----------------------------------------------------\n");
        cout << Rus("||  иМя    |  Страна  | оценка 1| оценка 2| сумма ||\n");
        printf("----------------------------------------------------\n");
        printf("|| %s | %s | %d | %d | %d | ||\n", Rus(X[i].Name), Rus(X[i].Str), X[i].oc1, X[i].oc2, X[i].Sum);
        printf("----------------------------------------------------\n");
    }

    Max = X[1].Sum;

    for (i = 0; i < n; i++)
    {
        if (X[i].Sum > Max)
        {
            Max = X[i].Sum;
            k = X[i].Name;
        }
    }

    cout << Rus("Чемпионы, набравшие максимальное количество очков:\n");

    for (i = 0; i < n; i++)
    {
        if (X[i].Sum == Max)
        {
            printf("|| %s | %d ||", Rus(X[i].Name), X[i].Sum);
        }
    }
    system("pause");
    return 0;
}

char* Rus(char* str) {
      char buf[500];
      CharToOem(str, buf);
      return buf;
}
NiCola999 вне форума Ответить с цитированием
Старый 30.04.2010, 11:55   #9
coNsept
Форумчанин
 
Аватар для coNsept
 
Регистрация: 14.12.2009
Сообщений: 716
По умолчанию

Простите меня за ошибки, писал очень быстро, так как уходил
coNsept вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужно перевести программу с Паскаля на С SweetDream Помощь студентам 4 24.04.2010 17:51
Нужно написать программу Rock'n'rolla Работа с сетью в Delphi 0 25.01.2010 20:05
Нужно написать программу за $ avallanch Фриланс 2 13.06.2007 23:21