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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Горе айтишник
1 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 18
#1

Переписать с Delphi на C++ - C++

26.12.2011, 00:09. Просмотров 1122. Ответов 8
Метки нет (Все метки)

Народ! Помогите, пожалуйста! У меня проблема. Я практически не знаю синтаксис C++, а разбираться нет времени. Я написала программу в Delphi. Можно как-нибудь ее переписать на C++??? Заранее благодарю!!!
Вот собсна код:

Delphi
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
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
Procedure ShowN1(x,y,o: Integer);
var total:integer;
o:=a[i];
x:=o mod 10;
y:=o div 10;
 
total:=x+y;
if total=7 then Label1.Caption:=o;
end;
 
Procedure ShowN2(x,y,z,t,o: Integer);
var total:integer;
o:=a[i]
x:=o mod 100;
y:=o mod 10;
z:=o div 100;
t:=x div 10;
 
total:=z+y+t;
if total=7 then Label1.Caption:=o;
end;
 
Procedure ShowN3(o,z,x,y,t,p,f: Integer);
var total:integer;
x:=o mod 1000;
y:=x mod 100;
z:=y mod 10;
t:=o div 1000;
p:=x div 100;
f:=y div 10;
 
total:=z+t+p+f;
if total=7 then Label1.Caption:=o;
end;
 
Procedure ShowN4(o,x,y,z,t,p,f,u,q: Integer);
var total:integer;
x:=o mod 10000;
y:=x mod 1000;
z:=y mod 100;
t:=z mod 10;
p:=z div 10;
f:=y div 100;
u:=x div 1000;
q:=o div 10000;
 
total:=q+u+f+p+t;
if total=7 then Label1.Caption:=a[i];
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var a:array[4..32000] of integer;
var x,y: string; i:byte; s, x1,x2,x3,x4:integer;
begin
for i:=4 to 100 do
a[i]:=s;
x1:= s mod 2;
x2:= s mod 3;
x3:= s mod 5;
x4:= s mod 7;
 
if (x1<>0) or (x2<>0) or (x3<>0) or (x4<>0)
then
if (a[i]>42) and (a[i]<100) then ShowN1;
if (a[i]>100) and (a[i]<1000) then ShowN2;
if (a[i]>1000) and (a[i]<10000) then Shown3;
if (a[i]>10000) and (a[i]<32000) then Shown4;
end;
end;
 
end.
Возможно могут быть ошибки... Простите, что я такой идиот нас плохо учат

условие задачи

"Найти простые (!!! которые делятся на 1 и сами на себя) числа такие, что сумма их цифр следуемого за ним простого числа делилась на 7. Вывести число таких чисел. Кол-во элементов массива 32000"

Сейчас смотрю, что написала и понимаю, что написала херь. Было 4 ночи, работал 1% мозга.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2011, 00:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переписать с Delphi на C++ (C++):

Переписать программу с Delphi на C++ - C++
Есть программа на делфи,но надо ее еще на с++,помогите переделать,или кто может переделайте,буду благодарен.

Переписать код из Delphi в С++ - C++
Вот собственно код,я +- понимаю, что к чему,а переписать в плюсы не могу:( program Project2; {$APPTYPE CONSOLE} uses ...

Переписать заданные фрагменты кода с Delphi на C++ - C++
всем привет! Подскажите пожалуйста как будет в С++: 1. TParmStr = array of string; 2.try Result := vs_int; except ...

Переписать из Delphi в QT C++ - C++ Qt
Всем привет! Помогите переписать небольшой кусок кода из Делфи в Qt procedure RExcept(s: string); begin if s &lt;&gt; '' then ...

переписать программу на DELPHI на С++ - Delphi
Помогите пожалуйста переписать эту программу на DELPHI на С++ я понимаю что для человека который знает и С++ и DELPHI это не трудно....

Переписать программу с Delphi на С# - C#
Добрый вечер! Переписываю прогу с Delphi на C#. На последней строчке вылетает исключение. Подскажите, пожалуйста, что делаю неправильно. ...

8
HighPredator
5541 / 1854 / 346
Регистрация: 10.12.2010
Сообщений: 5,471
Записей в блоге: 2
26.12.2011, 10:49 #2
Про простые числа ясно. Что значит:
Цитата Сообщение от Горе айтишник Посмотреть сообщение
числа такие, что сумма их цифр следуемого за ним простого числа делилась на 7
?
0
Горе айтишник
1 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 18
26.12.2011, 21:41  [ТС] #3
Требуется найти числа, которые идут сразу после простых чисел + сумма цифр этих чисел равна 7
0
HighPredator
5541 / 1854 / 346
Регистрация: 10.12.2010
Сообщений: 5,471
Записей в блоге: 2
26.12.2011, 22:33 #4
Цитата Сообщение от Горе айтишник Посмотреть сообщение
Кол-во элементов массива 32000
Элементы задаются произвольно или от нуля до 32000?
0
Горе айтишник
1 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 18
27.12.2011, 20:20  [ТС] #5
от 0 до 32000
0
HighPredator
5541 / 1854 / 346
Регистрация: 10.12.2010
Сообщений: 5,471
Записей в блоге: 2
28.12.2011, 08:35 #6
Вот набросал код:
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
#include<iostream>
 
using namespace std;
 
bool IsPrime(int Digit)
{
    bool flag=true;
    if(Digit<=3) flag=true;
    else if(Digit%2==0) 
    {
        if(Digit!=2) flag=false;
    }
    else if(Digit>4)
    {
        int i=2;
        while((i<=Digit/2)&&(flag==true))
        {
            if(Digit%i==0) flag=false;
            i++;
        }
    }
    return flag;
}
 
int DigitSum(int Digit)
{
    int Sum=0;
    int temp=Digit;
    while(temp!=0)
    {
        Sum=Sum+temp%10;
        temp=temp/10;
    }
    return Sum;
}
 
int main()
{
    int A[32000];
    int i;
    int cnt=0;
    for(i=0;i<32000;i++) A[i]=i;
    for(i=1;i<31999;i++)
    {
        if((IsPrime(A[i])==true)&&(DigitSum(A[i+1])==7)) cnt++;
    }
    cout<<cnt<<endl;
    getchar();
    return 0;
}
Единственное, таких чисел вроде нет

Добавлено через 4 минуты
Кстати, насколько "сразу после простых чисел"?
0
Горе айтишник
1 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 18
28.12.2011, 13:15  [ТС] #7
найти такие простые, что сумма их цифр, а также сумма цифр следующего простого числа делилась на 7.
Просто я не умею писать на лекциях...
0
HighPredator
5541 / 1854 / 346
Регистрация: 10.12.2010
Сообщений: 5,471
Записей в блоге: 2
28.12.2011, 18:17 #8
Цитата Сообщение от Горе айтишник Посмотреть сообщение
найти такие простые, что сумма их цифр, а также сумма цифр следующего простого числа делилась на 7.
Это финальный вариант условия? Если да, то вот:
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
#include<iostream>
 
using namespace std;
 
bool IsPrime(int Digit)
{
    bool flag=true;
    if(Digit<=3) flag=true;
    else if(Digit%2==0) 
    {
        if(Digit!=2) flag=false;
    }
    else if(Digit>4)
    {
        int i=2;
        while((i<=Digit/2)&&(flag==true))
        {
            if(Digit%i==0) flag=false;
            i++;
        }
    }
    return flag;
}
 
int DigitSum(int Digit)
{
    int Sum=0;
    int temp=Digit;
    while(temp!=0)
    {
        Sum=Sum+temp%10;
        temp=temp/10;
    }
    return Sum;
}
 
int main()
{
    int A[32000];
    int N=0;
    int i;
    int cnt=0;
    bool flag=false;
    for(i=0;i<32000;i++)
    {
        if(IsPrime(i)) 
        {
            A[N]=i;
            N++;
        }
    }
    for(i=0;i<N-1;i++)
    {
        if(((DigitSum(A[i])%7)==0)&&((DigitSum(A[i+1])%7)==0))
        {
            cout<<A[i]<<" "<<A[i+1]<<endl;
            cnt++;
        }
    }
    cout<<"Total pair count is:"<<cnt<<endl;
    getchar();
    return 0;
}
1
Горе айтишник
1 / 0 / 0
Регистрация: 15.12.2011
Сообщений: 18
11.01.2012, 23:13  [ТС] #9
Спасибо огромное!!!!! Я ВАС ОБОЖАЮ!!!!!!!!!!!!!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.01.2012, 23:13
Привет! Вот еще темы с ответами:

Переписать функцию с C на Delphi - Delphi
void * TestFunc(void * a, int i) { return (RSize *)a + (2 + i); } Как это перевести в Delphi ??? Вот вариант

переписать прогу с VB на delphi - Delphi
Здравствуйте форумчане, есть прога написанная на VB, нужно написать эту же прогу только на delphi, помогите пожалуйста с delphi никогда не...

Переписать программу с Delphi на C++ - Visual C++
Моя просьба выражается в том, что у меня есть прога не Делфи, а мне надо зделать такую же на Visual C++

Переписать код из C++, на Delphi - Delphi
ребят помогите переписать код


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

Или воспользуйтесь поиском по форуму:
9
Yandex
Объявления
11.01.2012, 23:13
Ответ Создать тему
Опции темы

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