1 / 2 / 0
Регистрация: 05.09.2010
Сообщений: 116
|
||||||
1 | ||||||
С++.Оператор switch.05.09.2010, 16:04. Показов 3894. Ответов 22
Метки нет (Все метки)
Не могу избавиться от ошибки в программном коде.
0
|
05.09.2010, 16:04 | |
Ответы с готовыми решениями:
22
Оператор switch Оператор switch Оператор switch оператор switch - C++ |
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|||||||||||
05.09.2010, 16:05 | 2 | ||||||||||
michal3003, После окончания case 2: break поставьте.
То есть
Ах да. И x у вас не меняется. Как-то так. Но не слишком понятно, ЧТО вы хотите сделать и чему должен быть равен x...
0
|
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
05.09.2010, 16:11 | 3 |
michal3003, у вас в коде имя переменной x написано кириллическим символом, а надо латиницей писать
Запись не правильная, мало того, что она ничего не делает, так и: 1) операция сравнения ==, а присвоения = 2) сравнение происходит или в операторе if или присваивается переменной булевского типа 3) невозможно присвоить значение выражению, только переменным
0
|
Kastaneda
|
|||||
05.09.2010, 16:26
#4
|
|||||
Не по теме:
ну а что - логично, ведь все остальные переменные ему известны)
0
|
1 / 2 / 0
Регистрация: 05.09.2010
Сообщений: 116
|
|
05.09.2010, 17:01 [ТС] | 5 |
А почему х=1 где декларируешь его?
short x=1;
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
05.09.2010, 17:02 | 6 |
michal3003, А давайте вы скажете чему должен быть равен x. Гадать как-то не особо хочется
0
|
1 / 2 / 0
Регистрация: 05.09.2010
Сообщений: 116
|
|
05.09.2010, 17:06 [ТС] | 7 |
ну я думаю х=0,потому что case начинается с нуля,а не с 1.не знаю точно...
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
05.09.2010, 17:08 | 8 |
michal3003, Прекрасно. x=0. Итого:
pow(x,2.0) - возводим 0 в квадрат. Что получаем? 0. (b-k)*x - умножаем разницу на ноль. Что получаем? 0. Итого из формулы выходит: (c1-c2). Вопрос. Зачем такая формула в таком случае?
1
|
1 / 2 / 0
Регистрация: 05.09.2010
Сообщений: 116
|
|
05.09.2010, 17:43 [ТС] | 9 |
все,понял.спасибо.
Добавлено через 30 минут я просчитал все.программа выдает всегда один вариант "Error!" при любых значениях переменных.не знаю че делать...
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
05.09.2010, 17:48 | 10 |
michal3003, Формула точно верная? Что сделать то надо?)
0
|
05.09.2010, 18:21 | 11 |
Если я правильно понял суть задания, то очевидно, что из этой формулы нужно выразить X. Мы имеем уравнение , кто не заметил - это уравнение вида , т.е. простое квадратное уравнение, которое, как известно, имеет 2 корня, которые нужно найти. А для этого нужен совсем другой код)
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
05.09.2010, 18:30 | 12 |
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
05.09.2010, 18:31 | 13 |
Kastaneda, Согласен. Тут видимо нужно просто найти дискременант. Если отрицательный - нет пересечения, если ноль - одна точка, если больше ноля - 2 точки.
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
05.09.2010, 18:33 | 14 |
...И, судя по всему, комплексные корни считать не нужно
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
05.09.2010, 18:58 | 16 |
Копипаста
Сообщение от "Структура и интерпретация компьютерных программ"
По сути, мы задаем отношение между объектами-величинами в виде элементарных ограничений. Приведу примеры из книги. Допустим, есть некоторая операция (элементарное ограничение) multiplier, которая принимает три объекта x, y, z, и связывает их следующим отношением: x * y = z. Теперь, если задать два любых объекта из этого отношения, то вычислится третий объект. То есть, если задать x и z, то вычислится y, если задать x и y, то вычислится z и т.д. С помощью комбинации элементарных ограничений можно составлять более сложные выражения. К примеру, перевод из градусов по Цельсию в градусы по Фаренгейту: 9 * С = 5 * (F - 32). Задавая С, мы вычисляем F, и наоборот. Таким же способом можно было бы решить уравнение ТС. Вот вроде то же самое на Википедии
1
|
Kastaneda
|
05.09.2010, 19:03
#17
|
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
05.09.2010, 19:07 | 18 | |||||
Походу как-то так. Мог недомудрить
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
05.09.2010, 19:09 | 19 |
Kastaneda, в книге примеры реализованы на языке Scheme (если надо, могу привести код, но лучше почитай саму книжку). Реализация на С/С++ будет отличаться, т.к. С/С++ не является функциональным языком программирования. Я думаю, нужно смотреть в сторону ссылок/указателей
0
|
0 / 0 / 0
Регистрация: 31.08.2010
Сообщений: 7
|
|
05.09.2010, 19:15 | 20 |
Я так думаю, что товарищу необходимо найти кол-во точек пересечения параболы y=ax^2+bx+c с прямой y=k*x+c2. Так вот, у квадратного уравнения ДВА корня (поэтому switch (x) не поможет), и всё, что нужно сделать - это посчитать дискриминант D=(b-k)^2 - 4*a*(c1-c2). Если он больше нуля, то две точки пересечения, если равен нулю, то одна, а если меньше нуля, то точек пересечения нет.
0
|
05.09.2010, 19:15 | |
05.09.2010, 19:15 | |
Помогаю со студенческими работами здесь
20
Оператор switch оператор Switch???? Оператор switch Cи++. Оператор switch. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |