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

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

Войти
Регистрация
Восстановить пароль
 
mazarinik
0 / 0 / 0
Регистрация: 02.10.2013
Сообщений: 17
#1

Перепишите пожалуйста на C++ - C++

08.10.2013, 23:25. Просмотров 435. Ответов 4
Метки нет (Все метки)

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
procedure TForm1.Button1Click(Sender: TObject);
var r5,x1,y1,x2,y2,x3,y3,x4,y4:integer;
    l,n,r4,r3,r1,r2:integer;
begin
   x1:=200;y1:=200;
   x2:=200;y2:=50;
   x3:=50;y3:=50;
   r1:=Round(SQRt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)));
   r2:=Round(SQRt((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2)));
   r3:=Round(SQrt(r2*r2+r1*r1));
   if (x1-x2)>0 then
   l:=Round(arctan((y1-y2)/(x1-x2))*180/pi) else l:=90;
   // находим угол наклона сторны A
   for n:=0 to 4 do begin
     x4:=x2+Round(cos((45+l)*pi/180)*r3)*GetNt(n).a;
     y4:=y2+Round(sin((45+l)*pi/180)*r3)*GetNt(n).b;
     r4:=Round(SQRt((x3-x4)*(x3-x4)+(y3-y4)*(y3-y4)));
     r5:=Round(SQRt((x4-x1)*(x4-x1)+(y4-y1)*(y4-y1)));
     if (r4=r1) and (r5=r2) then begin
       Showmessage(inttostr(x4)+'  '+inttostr(y4));
       break;
     end;
   end;
   myDrawRect(x1,y1,x2,y2,x3,y3,x4,y4);
 
 
end;
Добавлено через 33 минуты
Пожалуйста очень нужно, умоляю просто
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.10.2013, 23:25     Перепишите пожалуйста на C++
Посмотрите здесь:

перепишите на C++ пожалуйста - C++
Перепешите пожалуйста на С/С++. uses crt; var a:array of integer; n,i:integer; begin writeln('Введите любые числа от -10 до...

Перепишите, пожалуйста, программу, используя цикл for - C++
#include "stdafx.h" #include <iostream> #include <math.h> using namespace std; int main() { double y, x, a, b, h, p, eps,...

Перепишите пожалуйста код программы с языка Visual Basic в C++ - C++
Вот код на языке Visual Basic Randomize Timer Dim A(19) As integer For i=0 to 19 A(i)=Int(Rnd*1000) Next For i=0 to 19 ...

Перепишите с С на С++ - C++
#include<conio.h> #include<stdio.h> const int N = 10; main(){ int A, i, b; for(i=0; i<N; i++){ ...

Перепишите с Pascal на C++ - C++
uses crt; const nmax = 30; type TInfo = record M : real; V : real; end;

Перепишите код - C++
Здраствуйте, помогите пожалуйста переписать код так что бы не через указатель temp, а через вызов функции с тела программы. #include...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
TrueBit
95 / 95 / 12
Регистрация: 19.11.2012
Сообщений: 195
08.10.2013, 23:36     Перепишите пожалуйста на C++ #2
Как работает функция myDrawRect? Как организована структура для GetNt и чем она заполнена? Не изучал Delphi, но вот код для консоли. Может пригодится(без гарантий).
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
#include <iostream>
#include <math.h>
#define pi 3.14159265358979323846
using namespace std;
void myDrawRect(int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4) {
    printf("то, что myDrawRect(%d,%d,%d,%d,%d,%d,%d,%d) ?",x1,y1,x2,y2,x3,y3,x4,y4);
}
struct MyStruct {
    int a;
    int b;
};
int main() {
    int r5,x1,y1,x2,y2,x3,y3,x4,y4;
    int l,n,r4,r3,r1,r2;
    MyStruct GetNt [5];
    setlocale(LC_ALL,"rus");
    x1=200; y1=200;
    x2=200; y2=50;
    x3=50;  y3=50;
 
    for(int i=0; i<=4; i++) { // как заполнена структура GetNt? Заполним 1-ми
        GetNt[i].a=1;
        GetNt[i].b=1;
    }
 
    r1=(int)ceil(sqrt((double)((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))));
    r2=(int)ceil(sqrt((double)((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2))));
    r3=(int)ceil(sqrt((double)(r2*r2+r1*r1)));
 
    if((x1-x2)>0)
        l=(int)ceil(atan((double)((y1-y2)/(x1-x2))*180/pi));
    else
        l=90;
    // находим угол наклона сторны A
    for(n=0; n<=4;n++) {
         x4=x2+(int)ceil(cos((45+l)*pi/180)*r3)*GetNt[n].a;  // структура GetNt - нужно инициализировать
         y4=y2+(int)ceil(sin((45+l)*pi/180)*r3)*GetNt[n].b;  // структура GetNt - нужно инициализировать
         r4=(int)ceil(sqrt((double)((x3-x4)*(x3-x4)+(y3-y4)*(y3-y4))));
         r5=(int)ceil(sqrt((double)((x4-x1)*(x4-x1)+(y4-y1)*(y4-y1))));
         if ( r4==r1 && r5==r2) {
             printf("%d  %d\n",x4,y4);
            break;
        }
   }
   myDrawRect(x1,y1,x2,y2,x3,y3,x4,y4);
   getchar();
}
mazarinik
0 / 0 / 0
Регистрация: 02.10.2013
Сообщений: 17
09.10.2013, 00:55  [ТС]     Перепишите пожалуйста на C++ #3
Спасибо огромное

Добавлено через 1 час 7 минут
Не подскажите пожалуйста, я правильно изменил код для решения этой задачи ?

Даны действительные числа x1, y1, x2, y2, x3, y3. Известно, что точка с координатами (x1, y1), (x2, y2), (x3, y3), являться вершинами прямоугольника. Определить координаты четвертой вершины прямоугольника


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
#include <stdio.h>
#include <math.h>
#define pi 3.14159265358979323846
 
 
void main() {
    float r5,x1,y1,x2,y2,x3,y3,x4,y4, l,n,r4,r3,r1,r2;;
    
    for(int i=0; i<=4; i++) { 
        a=1;
        b=1;
    }
 
    r1=(int)ceil(sqrt((double)((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))));
    r2=(int)ceil(sqrt((double)((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2))));
    r3=(int)ceil(sqrt((double)(r2*r2+r1*r1)));
 
    if((x1-x2)>0)
        l=(int)ceil(atan((double)((y1-y2)/(x1-x2))*180/pi));
    else
        l=90;
    // находим угол наклона сторны A
    for(n=0; n<=4;n++) {
         x4=x2+(int)ceil(cos((45+l)*pi/180)*r3)*n*a; 
         y4=y2+(int)ceil(sin((45+l)*pi/180)*r3)*n*b;  
         r4=(int)ceil(sqrt((double)((x3-x4)*(x3-x4)+(y3-y4)*(y3-y4))));
         r5=(int)ceil(sqrt((double)((x4-x1)*(x4-x1)+(y4-y1)*(y4-y1))));
         if ( r4==r1 && r5==r2) {
             printf("Koordinati vershini ravni: &d &d",x4,y4);
            break;
        }
   }
  
}
TexHuK
9 / 9 / 0
Регистрация: 19.10.2011
Сообщений: 102
09.10.2013, 08:57     Перепишите пожалуйста на C++ #4
Цитата Сообщение от mazarinik Посмотреть сообщение

C++
1
2
3
4
    for(int i=0; i<=4; i++) { 
        a=1;
        b=1;
    }
Что это за цикл такой? И что за переменные? по моему они даже не объявлены..
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.10.2013, 16:14     Перепишите пожалуйста на C++
Еще ссылки по теме:

Перепишите строчку на printf_s - C++
case 1: cout &lt;&lt; &quot;\n Red&quot;; break; как строчку эту переписать на printf_s

Перепишите программу из Pascal в C++ - C++
Здравствуйте. Прошу вас о помощи. Есть программа на Pascal. Нужно переписать её на C++, чтобы она выполняла такие же операции. Вот код: ...

Перепишите задачу из Pascal на C++ (Есть условие) - C++
Здравствуйте, прошу о помощи. Решите задачу: В начальной школе Будущего изучали целые числа типа Longint, который они взяли из языка...

Перепишите за меня код с С++ Builder на C++ Visual Studio - C++
Помогите пожалуйста переделать код программы с С++ Builder на C++ Visual Studio, а то что уже не пробовала и что не перечитала. Походу...

Перепишите мой код через scanf printf - C++
Замените cin cout на scaf print правильно #include &lt;cmath&gt; #include &lt;vector&gt; #include &lt;iostream&gt; #include &lt;stdio.h&gt; using...

Перепишите решение! Трехузловая составная квадратура Гаусса - C++
Как решить этот интеграл?? ответ: 1,11072 необходимо переписать то, что выделено комментариями. решение метода составной формулы...


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

Или воспользуйтесь поиском по форуму:
TrueBit
95 / 95 / 12
Регистрация: 19.11.2012
Сообщений: 195
09.10.2013, 16:14     Перепишите пожалуйста на C++ #5
Цитата Сообщение от mazarinik Посмотреть сообщение
Спасибо огромное

Добавлено через 1 час 7 минут
Не подскажите пожалуйста, я правильно изменил код для решения этой задачи ?

Даны действительные числа x1, y1, x2, y2, x3, y3. Известно, что точка с координатами (x1, y1), (x2, y2), (x3, y3), являться вершинами прямоугольника. Определить координаты четвертой вершины прямоугольника


C++
1
...
Если правильно понял, то даны 3 точки с координатами (x1, y1), (x2, y2), (x3, y3), где x1, y1, x2, y2, x3, y3 - действительные числа. Обозначим их A,B,C соответственно. Они являются вершинами прямоугольника. Пусть точка D - четвертая вершина прямоугольника. Определить её координаты. Изобразим наглядно.

oY
^
|.......B(x2,y2)------C( x3,y3)
|................|.\.......|
|................|..\......|
|................|...\.....|
|................|....\....|
|................|.....\...|
|................|......\..|
|................|.......\.|
|................|........\|
|.......A(x1,y1)------| D(x4,y4) - искомая точка
0---------------------------------------------------> oX

AD = BC = C-B = (x3-x2; y3-y2)
D = AD + A = (x3-x2; y3-y2) + (x1; y1) = (x1-x2+x3; y1-y2+y3)

, где AD,BC,AD - векторы(буду признателен, если кто-нибудь подскажет, как делать математические вставки(н-р векторное обозначение) на языке, подобном LaTeX)

таким образом координаты точки D(x1-x2+x3; y1-y2+y3).

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
int main() {
    double x1,y1,x2,y2,x3,y3,x4,y4;
    setlocale(LC_ALL,"rus");
    cout << "Введите x1: "; cin >> x1;
    cout << "Введите y1: "; cin >> y1;
    cout << "Введите x2: "; cin >> x2;
    cout << "Введите y2: "; cin >> y2;
    cout << "Введите x3: "; cin >> x3;
    cout << "Введите y3: "; cin >> y3;
    x4=x1-x2+x3;
    y4=y1-y2+y3;
    printf("(x1,y1),(x2,y2),(x3,y3),(x4,y4)=(%d,%d),(%d,%d),(%d,%d),(%d,%d) \n",
        x1,y1,x2,y2,x3,y3,x4,y4);
   getchar();
   getchar();
}
Добавлено через 8 минут
Забыл исправить printf:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
int main() {
    double x1,y1,x2,y2,x3,y3,x4,y4;
    setlocale(LC_ALL,"rus");
    cout << "Введите x1: "; cin >> x1;
    cout << "Введите y1: "; cin >> y1;
    cout << "Введите x2: "; cin >> x2;
    cout << "Введите y2: "; cin >> y2;
    cout << "Введите x3: "; cin >> x3;
    cout << "Введите y3: "; cin >> y3;
    x4=x1-x2+x3;
    y4=y1-y2+y3;
    printf("(x1,y1),(x2,y2),(x3,y3),(x4,y4)=(%f,%f),(%f,%f),(%f,%f),(%f,%f) \n",
        x1,y1,x2,y2,x3,y3,x4,y4);
   getchar();
   getchar();
}
Yandex
Объявления
09.10.2013, 16:14     Перепишите пожалуйста на C++
Ответ Создать тему
Опции темы

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