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

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

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

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

09.02.2014, 04:32. Просмотров 794. Ответов 4
Метки нет (Все метки)

В общем суть задачи такова:
Дан равнобедренный треугольник с катетом - a, гиппотенузой - b, высотой - h и площадью - s, и, нужно составить программу которая по заданному значению соответствующего элемента, вычисляла бы значения всех остальных элементов треугольника.

на всякий случай
Составить программу которая по заданному значению соответствующего элемента, вычисляла бы значения всех остальных элементов треугольника.

Вот примерно что я накидал, знаю что со switch сделал что-то не совсем то, и скорее всего всё очень коряво, но учу си лишь неделю)

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
#include <cstdlib>
#include <iostream>
#include <iostream.h>
#include "math.h"
 
 
using namespace std;
 
int main(int argc, char *argv[])
{
    float a,b,h,s,o;
    cout<<"\n a="; cin>>a;
    cout<<"\n b="; cin>>b;
    cout<<"\n h="; cin>>h;
    cout<<"\n s="; cin>>s;
    cout<<"\n vvedite o"; cin>>o;
switch (o) {
case 'a': {
     b=a*pow(2,1./3); cout<<b;
     h=(a*pow(2,1./3))/2; cout<<h;
     s=(2*pow(a,2))/4; cout<<s;break;
}
case 'b': {
     a=b/(pow(2,1./2)); cout<<a;
     h=(1./2)*b; cout<<h;
     s=(pow(b,2))/4; cout<<s;break;
}
case 'h': {
     b=2*h; cout<<h;
     a=h*pow(2,1./2); cout<<a;
     s=pow(h,2); cout<<s;break;
}
case 's': {
     b=(pow(s,1./2))/2; cout<<b; 
     h=(pow(s,1./2)); cout<<h;
     a=pow((s/2),1./2); cout<<a; break;
}
       
}
    system("PAUSE >> void");
    return EXIT_SUCCESS;
}
больше всего напрягает вот эта строчка
C++
1
2
cout<<"\n vvedite o"; cin>>o;
switch (o) {
Ибо не знаю как толком её сделать, прошу помощи тут, спасибо за понимание.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2014, 04:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Составить программу которая по заданному значению соответствующего элемента, вычисляла бы значения всех остальных элементов треугольника. (C++):

По первой букве элемента и его значению найти значения остальных элементов треугольника (используя switch) - C++
Дан прямоугольный равнобедренный треугольник. Его элементами являются: катет, гипотенуза и площадь. По первой букве элемента и его значению...

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

Составить программу, которая подсчитывает количество разных по значению элементов в данном массиве - C++
Помогите пожалуйста) Это срочно нужно) Дан одномерный массив Х, состоящий из 20 целых чисел. Составить программу, которая подсчитывает...

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

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

Составить программу, которая по данному числу (1-12) выводит название соответствующего ему месяца - C++
Задача 2 Составить программу, которая по данному числу (1-12) выводит название соответствующего ему месяца.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
azbest
41 / 41 / 8
Регистрация: 12.03.2013
Сообщений: 148
09.02.2014, 04:55 #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 <cstdlib>
#include <iostream>
#include <iostream>
#include "math.h"
 
 
 
using namespace std;
 
int main()
{
    setlocale( LC_ALL,"Russian" );  //установка русских шрифтов
    char o;                         //символьная переменная для выбора
    // Твоя ошибка была в том что в свич нельзя подставлять неперечисляемые типы данных
    float x;  //достаточно одной переменной
    cout << "Выберите один из вариантов (a,b,h,s) ";
    cin >> o;
 
switch (o) {
case 'a': {
     cout << "Введите значение а = ";
     cin >> x;
     cout << "b= " << x*pow(2,1./3) << endl;
     cout << "h= " << (x*pow(2,1./3))/2 << endl;
     cout << "s= " << (2*pow(x,2))/4 << endl;
     break;
}
case 'b': {
     cout << "Введите значение b = ";
     cin >> x;
     cout << "a= " << x/(pow(2,1./2)) << endl;
     cout << "h= " << (1./2)*x << endl;
     cout << "s= " << (pow(x,2))/4 << endl;
     break;
}
 
// тут остальные .....
 
default: cout << "Некорректный ввод" << endl; //если пользователь введет что-то что не описано вариантами выбора (например "u")
}
    system("PAUSE >> void");
    return EXIT_SUCCESS;
}
1
vovacreme
-16 / 61 / 13
Регистрация: 14.01.2014
Сообщений: 145
09.02.2014, 05:02 #3
Выражение проверки в операторе switch должно иметь целочисленный тип, а у тебя переменная o объявляется в программе, как float, и потом, ты пытаешься сравнить значение float со значением const char, что в принципе в языке С++ невозможно. Вывод: объявить переменную o типа char
1
vovacreme
-16 / 61 / 13
Регистрация: 14.01.2014
Сообщений: 145
09.02.2014, 05:02 #4
Выражение проверки в операторе switch должно иметь целочисленный тип, а у тебя переменная o объявляется в программе, как float, и потом, ты пытаешься сравнить значение float со значением const char, что в принципе в языке С++ невозможно. Вывод: объявить переменную o типа char
0
JjTer
0 / 0 / 0
Регистрация: 18.01.2014
Сообщений: 6
09.02.2014, 15:36  [ТС] #5
Цитата Сообщение от azbest Посмотреть сообщение
C++
1
2
#include <cstdlib>
    setlocale( LC_ALL,"Russian" );  //установка русских шрифтов
Вместо русских шрифтов, кроказябра какая-то
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.02.2014, 15:36
Привет! Вот еще темы с ответами:

Структура: Разработать программу, которая по заданному значению параметра St находит соответствующий элемент массива - C++
Дан одномерный массив из N элементов, каждый из которых представляет собой запись вида: struct ZAP { unsigned char St ; int Dt; ...

Массив: Заменить последний из отрицательных элементов в массиве на три элемента, равных заданному значению. - C++
Вставка в вектор новых элементов 1)Заменить последний из отрицательных элементов в массиве на три эле¬мента, равных заданному значению....

Напечать число, которое меньше максимального элемента,но больше всех остальных элементов - C++
Составить программу,которая в массиве A находит второе по величине число(вывести на печать число,которое меньше максимального элемента...

Задача через функцию (составить программу, которая по данному числу (1-12) выводит название соответствующего ему месяца) - C++
Задача 2 Составить программу, которая по данному числу (1-12) выводит название соответствующего ему месяца.


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

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

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