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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Faberge
0 / 0 / 0
Регистрация: 09.03.2010
Сообщений: 30
#1

Написать программу ввода координат двух точек и вычисления расстояния между ними - C++

07.04.2010, 16:23. Просмотров 1343. Ответов 6
Метки нет (Все метки)

Практическая работа №9
ТЕМА: «Программирование структур и объединений в С++»
Цель: изучить работу структур и объединений в С++.
Тип урока: практическая работа.
Количество часов: 4.
Необходимое программное обеспечение: Visual Studio 6 Ent, MS Word.
Необходимые сведения из теории:
 структуры в С++;
 объединения в С++;
Упражнения:

Задание 1. Сведения о каждом химическом элементе из периодической таблицы Д.И. Менделеева представить в виде структуры. Haписать программу ввода таблицы в память компьютера.

Задание 2. Представить координаты точки в трехмерном пространстве в виде структуры, состоящей из трех вещественных полей. Написать программу ввода координат двух точек и вычисления расстояния между ними.

Задание 3. Рассматривая комплексное число как структуру, состоящую из двух вещественных полей, составить функции выполнения четырех арифметических операций с комплексными числами.\


Знающие люди помогите пожалуйста с выполнением данной практической!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2010, 16:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу ввода координат двух точек и вычисления расстояния между ними (C++):

Структуры Си. Написать программу ввода координат двух точек и вычисления расстояния между ними - C++
Представить координаты точек в трёхмерном пространстве в виде структуры, состоящей из трёх вещественных полей. Написать программу ввода...

Написать программу вычисления площади треугольника, если известно длины двух сторон и величина угла между ними. - C++
Написать программу вычисления площади треугольника, если известно длины двух сторон и величина угла между ними.

Написать программу для вычисления расстояния от начала координат - C++
Даны координаты 2-х точек на плоскости. Определить, какая из них лежит дальше от начала координат. Использовать функцию для вычисления...

Даны координаты двух точек. Вычислить расстояние между ними - C++
Начал изучать С++ совсем не давно. Стал разбираться после чтения некоторых книг, но всё равно, есть некоторые не понятные моменты. Вот...

Написать профамму вычисления расстояния между населенными пунктами - C++
Написать профамму вычисления расстояния между населенными пунктами, изображенными на карте. Ниже приведен рекомендуемый вид экрана во время...

Отпечатать расстояния от начала координат для тех точек,которые принадлежат кругу с заданным радиусом, и число таких точек. - C++
1)Значение f(k) заключено между значениями t1= -a - √(b+m), t2=√(a+b+m),но не равно нулю. 2)Дана матрица из 2 столбцов и 10 строк.Первый...

6
QWAN
58 / 57 / 1
Регистрация: 02.09.2008
Сообщений: 181
07.04.2010, 16:53 #2
Задание 1. Сведения о каждом химическом элементе из периодической таблицы Д.И. Менделеева представить в виде структуры. Написать программу ввода таблицы в память компьютера.
Почитай ответ по теме расположенной тут Работа с файлами. Телефонная книга
У тебя должно быть что-то похожее.

Задание 2. Представить координаты точки в трехмерном пространстве в виде структуры, состоящей из трех вещественных полей. Написать программу ввода координат двух точек и вычисления расстояния между ними.
Почитай http://www.cyberforum.ru/cpp-beginne...ead111055.html

Задание 3. Рассматривая комплексное число как структуру, состоящую из двух вещественных полей, составить функции выполнения четырех арифметических операций с комплексными числами.
Описать структуру "комплексное число"

Старайтесь сами находить похожие темы на форуме.
1
Faberge
0 / 0 / 0
Регистрация: 09.03.2010
Сообщений: 30
07.04.2010, 17:00  [ТС] #3
Я это все прочитал и учебников уже не мало перелопатил, чет не доганяю как конкретно моя проблема реализуется на C++...
0
QWAN
58 / 57 / 1
Регистрация: 02.09.2008
Сообщений: 181
07.04.2010, 18:08 #4
Задание 2 Так тебе подойдет?
Можно дописать еще чтоб это работало в цикле, если нужно допишеш сам.
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
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
 
struct Point3d 
{ 
    double x, y, z;
};
 
double DistancePoints3d(struct Point3d *p1, struct Point3d *p2)
{
    return sqrt(
            pow(p2->x-p1->x, 2)+
            pow(p2->y-p1->y, 2)+
            pow(p2->z-p1->z, 2)
        );
}
 
int main()
{
    Point3d p1, p2;
    cout << "Enter points:\n";    
    cout << "Point p1 (x, y, z):\n";
    cout <<"p1.x = ";
    cin >> p1.x;
    cout <<"p1.y = ";
    cin >> p1.y;
    cout <<"p1.z = ";
    cin >> p1.z;    
 
    cout << "Point p2 (x, y, z):\n";
    cout <<"p2.x = ";
    cin >> p2.x;
    cout <<"p2.y = ";
    cin >> p2.y;
    cout <<"p2.z = ";
    cin >> p2.z;     
    
    cout << "Distance = "<<DistancePoints3d(&p1, &p2) << endl;   
    _getch();
    return 0;
}
1
Faberge
0 / 0 / 0
Регистрация: 09.03.2010
Сообщений: 30
07.04.2010, 18:15  [ТС] #5
Цитата Сообщение от QWAN Посмотреть сообщение
Задание 2 Так тебе подойдет?
Можно дописать еще чтоб это работало в цикле, если нужно допишеш сам.
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
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
 
struct Point3d 
{ 
    double x, y, z;
};
 
double DistancePoints3d(struct Point3d *p1, struct Point3d *p2)
{
    return sqrt(
            pow(p2->x-p1->x, 2)+
            pow(p2->y-p1->y, 2)+
            pow(p2->z-p1->z, 2)
        );
}
 
int main()
{
    Point3d p1, p2;
    cout << "Enter points:\n";    
    cout << "Point p1 (x, y, z):\n";
    cout <<"p1.x = ";
    cin >> p1.x;
    cout <<"p1.y = ";
    cin >> p1.y;
    cout <<"p1.z = ";
    cin >> p1.z;    
 
    cout << "Point p2 (x, y, z):\n";
    cout <<"p2.x = ";
    cin >> p2.x;
    cout <<"p2.y = ";
    cin >> p2.y;
    cout <<"p2.z = ";
    cin >> p2.z;     
    
    cout << "Distance = "<<DistancePoints3d(&p1, &p2) << endl;   
    _getch();
    return 0;
}
Ай саул!!!=)
Благодарствую!!!=)
0
Lаmer
7 / 7 / 4
Регистрация: 24.03.2010
Сообщений: 25
07.04.2010, 18:18 #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
51
52
53
54
55
56
57
58
59
60
61
62
/*Представить координаты точки в трехмерном пространстве
в виде структуры, состоящей из трех вещественных полей.
Написать программу ввода координат двух точек
и вычисления расстояния между ними.*/
 
#include <iostream>
#include <cmath>
const size_t m = 2;
struct Space
{
    double x;
    double y;
    double z;
};
 
inline void InputStruct(struct Space* a, size_t k);
inline void OutputStruct(struct Space* a, size_t k);
inline float Distance(struct Space* a);
 
int main(void)
{
    struct Space* pSpace = new struct Space[m];
    setlocale(0, "");
    InputStruct(pSpace, m);
    OutputStruct(pSpace, m);
    std::cout << "Расстояние между точками: " << Distance(pSpace) << std::endl;
    delete[] pSpace;
    system("pause");
    return 0;
}
 
void InputStruct(struct Space* a, size_t k)
{
    for(size_t i = 0; i < k; i++)
    {
        std::cout << "Введите координаты " << i + 1 << " точки -> ";
        std::cin >> a[i].x;
        std::cin >> a[i].y;
        std::cin >> a[i].z;
    }
    std::cout << std::endl;
}
 
void OutputStruct(struct Space* a, size_t k)
{
    std::cout << "Состояние полей структуры Space: " << std::endl;
    for(size_t i = 0; i < k; i++)
    {
        std::cout << a[i].x << '\t';
        std::cout << a[i].y << '\t';
        std::cout << a[i].z << '\t';
        std::cout << std::endl;
    }
    std::cout << std::endl;
}
 
float Distance(struct Space* a)
{
    float dst = 0;
    dst = sqrt(pow((a[1].x - a[0].x), 2) + pow((a[1].y - a[0].y), 2) + pow((a[1].z - a[0].z), 2));
    return dst;
}
С циклом. Мой, ламерский, вариант :)

UPD_0: хотя смысла в нем не вижу.

UPD_1: остальные задания можешь сделать по аналогии.
0
Faberge
0 / 0 / 0
Регистрация: 09.03.2010
Сообщений: 30
07.04.2010, 20:12  [ТС] #7
Ребятки, прошу прощения за наглость, но блин я видимо слишком тупой...
Не могу никак построить решение для 1 и 3, в конспектах есть отрывки и как структуру разработать я сообразил, а как сделать полностью программу, не доходит...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2010, 20:12
Привет! Вот еще темы с ответами:

Составить программу для вычисления расстояния между точками пересечения окружностей - C++
Две окружности на плоскости заданы координатами своих центров и радиусами. Составить программу для вычисления расстояния между точками...

Написать программу, которая определяет, какая из точек расположена ближе к началу координат - C++
9 Даны две точки A(x1,y1) и B(x2,y2). Написать программу, которая определяет, какая из точек расположена ближе к началу координат. Данные...

В файле хранятся города и расстояния между ними. В каком порядке должен посетить их турист? - C++
В файле хранятся города и расстояния между ними (города и расстояния между ними приведены ниже), В каком порядке должен посетить их турист,...

Структура, координаты точек, расстояние между ними. - C++
Доброе время суток. Если можете, помогите найти ошибку. Заранее благодарю. Задача. Найти такую точку пространства, сумма...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
07.04.2010, 20:12
Ответ Создать тему
Опции темы

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