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

Динамическая память в ООП - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти номер элемента массива модуль разности справа от которого наименьший http://www.cyberforum.ru/cpp-beginners/thread1172806.html
ввести массив чисел без знака, количество которых заранее неизвестно.Ввод массива заканчивается вводом числа, уже имеющегося в массиве. Найти номер элемента массива модуль разности справа от которого наименьший.Значение элемента с этим номером при суммировании не учитывается. #include <iostream> #include <stdio.h> #include <conio.h> #include <malloc.h> #include <stdlib.h> int main() {
C++ Упорядочить элементы одномерного массива по убыванию модулей элементов Упорядочить элементы одномерного массива по убыванию модулей элементов. http://www.cyberforum.ru/cpp-beginners/thread1172725.html
C++ Зашифровать строку, выполнив циклическую замену каждой буквы
Перевести программу с паскаля на с++ // Дана строка-предложение на русском языке и число K (0 < K < 10). // Зашифровать строку, // выполнив циклическую замену каждой буквы на букву того же регистра, // расположенную в алфавите на K-й позиции после шифруемой буквы // (например, для K = 2 «А» перейдет в «В», «а» — в «в», «Б» — в «Г», «я» — в «б» и т. д.). // Букву «ё» в алфавите не...
Структура "Автобус" C++
Как исправить зацикливание при неверном вводе данных в этой программе? Цель программы заключается в:составить программу которая содержит динамическую информацию о наличии автобусов в автобусном парке! #include <string.h> #include <dos.h> #include <iostream.h> #include <iomanip.h> #include <vcl.h> #include <stdlib.h> #include <conio.h>
C++ Машина Тьюринга: программа для преобразования десятичных чисел в унарную запись http://www.cyberforum.ru/cpp-beginners/thread1172661.html
Помогите с выполнением. Тема машина Тьюринга. Задание:Составить программу для преобразования десятичных чисел {0,1,2,3,4,5,6,7,8,9} в унарную запись
C++ Найти в строке те слова, которые начинаются с прописной буквы Помогите, пожалуйста, а то я в информатике, а тем более в С++ совсем не шарю) Дана строка. Словом текста считается любая последовательность букв латинского алфавита; между соседними словами - не менее одного пробела, за последним словом – точка. Найти и сохранить в строке те слова, которые начинаются с прописной буквы. Все остальные слова удалить. подробнее

Показать сообщение отдельно
Locust1
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 35
12.05.2014, 02:13     Динамическая память в ООП
Здравствуйте, программа должна находить площадь и определять равносторонний ли треугольник. Площадь ищется только в случае равенства трех сторон треугольника. Значения вводятся с клавиатуры. Однако чего бы я не ввел, выводятся одни и те же неверные значения. Найдите пожалуйста в чем ошибка.

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
64
65
#include "stdafx.h"
#include "iostream"
using namespace std;
 
class triangle 
{
    int* A;               //создание указателя под массив сторон
 
public:
 
    triangle (int a1 = 3, int b1 = 4, int c1 = 5)   //конструктор инициализации
    {
        A = new int [3];     //динамические выд память под 3 стороны
        A[0] = a1;
        A[1] = b1;
        A[2] = c1;
    }
 
    ~triangle ()
    {
        delete [] A;
        cout << "destruktor ispolzuetsa\n";
    }
 
    
    bool proverka()
    {
        if (A[0] == A[1] && A[1] == A[2] && A[0] == A[2])
            return true;
        else
            return false;
    }
 
    double ploshad()
    {
        double result = ((sqrt(3.) * (double)(A[0] * A[0])) / 4);
        return result;
    }
 
};
 
int main()
{
    int n;
    cout << "Vvedite kol-vo treugolnikov:\n";
    cin >> n;
    triangle* B = new triangle [n];                //выделение динамической памяти под треугольники
    for(int i = 0; i < n; i++)
    {
        int a, b, c;
        cout<<"Vvedite dliny storon " << i+1 << " tr-ka:\n";
        cin >> a >> b >> c;
        B[i] = triangle (a, b, c);              //инициализация треугольника
 
        if (B[i].proverka())
        {
            cout<<i+1<<" ravnostoronnii"<<" "<<B[i].ploshad()<<"\n";
        }
        else 
            cout<<i+1<<" neravnostoronnii\n";
    } 
 
    cin.ignore();
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru