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

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

Войти
Регистрация
Восстановить пароль
 
ZxSpectrum
Сообщений: n/a
#1

Помогите пожалуйста разобраться с Switch case - C++

24.04.2012, 07:26. Просмотров 290. Ответов 1
Метки нет (Все метки)

Сразу предупрежу ,что я полный ламер) Мне нужно выполнить лабораторку с использованием конструкции switch-case. Вот ее условие:


Вычислить и вывести на экран значения аргумента и значения функции, заданной несколькими выражениями, для заданного интервала хн ≤ x ≤ хк и шага dx изменения аргумента. Параметры a, b, c – действительные числа.

Вариант 10.(смотри ссылку)
http://savepic.su/1817836.htm

Вот что я сумел на данный момент сделать, вся загвоздка в том что я не знаю как задать нужное мне условие для "case",который непременно желает оставаться константой(

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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
main()
{
 
int a, b, c, dx, F, xn, xk, x;
int n;
 
printf("Enter:\n");
std::cout<<"a = "; 
std::cin>>a; 
std::cout<<"b = "; 
std::cin>>b; 
std::cout<<"c = "; 
std::cin>>c; 
std::cout<<"xn = "; 
std::cin>>xn; 
std::cout<<"xk = "; 
std::cin>>xk; 
std::cout<<"dx = "; 
std::cin>>dx; 
 
n=0;
printf("Results:\n");
 
for (x=xn; x<=xk; x=x+dx)
{
switch(x-10<0 && a==0) 
{case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: case 10:
case 11: case 12: case 13: case 14: case 15: case 16: case 17: case 18: case 19: case 20: 
case 21: case 22: case 23: case 24: case 25: case 26: case 27: case 28: case 29: case 30: 
case 31: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40:
F =(cos(x)+1)/(b-x); break; 
 
switch(x-10>0 && a!=0)
{case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: case 10:
case 11: case 12: case 13: case 14: case 15: case 16: case 17: case 18: case 19: case 20: 
case 21: case 22: case 23: case 24: case 25: case 26: case 27: case 28: case 29: case 30: 
case 31: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40:
F=(a*x*x-b*x+c)/(sin(x)); break; 
 
 
default: F=(log(x+c))/(2*b);}}
 
 
}
printf ("%3d. x=%6.2f F=%8.3f\n\n",n,x,F);
printf("F=%d \n", F);
getch();
return 0;
 
}
 
Ну вот ее рабочее решение с помощью if else :
 
 
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{
float a, b, c, dx, F, xn, xk, x;
int n;
 
clrscr();
 
printf("Enter a, b, c, xn, xk, dx:\n");
scanf("%f%f%f%f%f%f",&a,&b,&c,&xn,&xk,&dx);
n=0;
printf("Results:\n");
 
for (x=xn; x<=xk; x=x+dx)
{
if (x-10<0 && a==0)
{F =(cos(x)+1)/(b-x);}
 
else if (x-10>0 && a!=0)
{F=(a*x*x-b*x+c)/(sin(x));}
 
else
F=(log(x+c))/(2*b);
 
printf ("%3d. x=%6.2f F=%8.3f\n\n",n,x,F);
}
 
getch();
return 0;
}


Всем СПАСИБО ЗА ВНИМАНИЕ!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2012, 07:26     Помогите пожалуйста разобраться с Switch case
Посмотрите здесь:

Помогите разобраться с switch - C++
Вот код программы: int i_1x; i_1x = 0; char a_n; ifstream input(&quot;input.txt&quot;); input &gt;&gt; a_n; switch...

invalid types ‘Room [26][26][26][double]’ for array subscript. Помогите разобраться пожалуйста. - C++
Параметр ловушки не выводиться(Trap) Выбивает ошибку invalid types ‘Room ’ for array subscript #include &lt;stdio.h&gt; #include...

Case switch и функции - C++
Имеется задание : 1. Сформировать динамический одномерный массив, заполнить его случайными числами и вывести на печать. 2. Выполнить...

Проблема со switch/case - C++
есть функция мэйн: int _tmain(int argc, _TCHAR* argv) { printf(&quot;1- default\n2-user\n&quot;); int t; scanf(&quot;%i&quot;, &amp;t); switch(t) ...

Switch - case vs While loop - C++
Код нормально работает если используется While loop и do - while, но криво работает если switch-case Коротко о коде: Надо подсчитать...

switch case 1 ИЛИ 2 - C++
делаю разбор вводимых команд, некоторые обрабатываются похоже, команды однобуквенные, разбираю кейсом, но вот как сделать чтобы 1 блок...

switch... case и #include - C++
как добавить source код в case как это делается правольно #include &quot;stdafx.h&quot; #include &quot;conio.h&quot; #include &quot;stdio.h&quot; ...

Switch case калькулятор - C++
добрый вечер всем,в калькуляторе нужно найти процент вот мой код,где ошибка? #include &lt;iostream&gt; using namespace std; int...

Оператор Switch,Case - C++
Парни можете ли вы объяснить все функции оператора Switch и Case. Буду очень признателен :)

Оператор switch case - C++
Вопрос состоит в следующем: почему после case ставится одинарное двоеточие вместо обычных фигурных скобок, и где еще в C++ используется...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6321 / 5905 / 1913
Регистрация: 18.12.2011
Сообщений: 15,184
Завершенные тесты: 1
24.04.2012, 08:53     Помогите пожалуйста разобраться с Switch case #2
В строке
switch(выражение)
выражение
должно принимать целочисленное значение,
которое потом анализируется в case ветвях.
C++
1
2
3
4
5
6
7
8
9
if(a==0)
switch(x)
{
...
}else
switch(x)
{
....
}
Ответ Создать тему
Опции темы

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