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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 37, средняя оценка - 4.81
Dimiona
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 24
#1

Cи++. Оператор switch. - C++

28.11.2009, 16:47. Просмотров 4542. Ответов 23
Метки нет (Все метки)

У меня такой вопрос. Есть задача: с 1 января 1990 года по некоторый день прошло n месяцев, определить название месяца текущего. Ну как через case определить, если прошло от 1-11 месяцев это понятно. А не подскажите какой оператор и как нужно использовать, если прошло больше 11 месяцев?...пожалуйста((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2009, 16:47     Cи++. Оператор switch.
Посмотрите здесь:

Оператор switch - C++
Зависит ли a) объектный код от порядка меток case и default в данном операторе? б) если ответ на первый вопрос положителен, то тогда...

Оператор switch - C++
Дан номер телевизионного канала. Вывести на экран наиболее популярные программы этого канала

Оператор switch - C++
целое число в диапазоне 0 – 9. Вывести строку — название соответствующей цифры на английском языке (0 — "zero", 1 — "one", 2 — "two", ...)....

оператор switch - C++
С++ начала учить недавно, и многое не понимаю... задачи решаю только по-аналогии.. Задача Составить структурную схему алгоритма и...

оператор switch - C++
КАк сделать чтобы при выборе неправильного ответа во втрой switch программа не в ходила int main(){ char v1; cout <<"Pervui...

Оператор Switch - C++
Нужно помощь с этим оператором может быть где-то направильно написал ??? со всеми функциями ответ выходет не верно, "res" - не меняет свое...

С++.Оператор switch. - C++
Не могу избавиться от ошибки в программном коде. #include <iostream> #include <math.h> #include <conio.h> using namespace std; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sh4d°_°ff
ex-close383
1255 / 278 / 19
Регистрация: 31.10.2009
Сообщений: 1,429
28.11.2009, 17:28     Cи++. Оператор switch. #16
тогда обьясню, необходимо использовать именно else if т.к. в противном случае программа всегда будет выдавать последнее значение (а так же именно поэтомму я начинаю проверку с 12 до 1 а не с 1 до 12), т.к. любое число кратно 1.
Darky
Быдлокодер
507 / 294 / 45
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
28.11.2009, 17:30     Cи++. Оператор switch. #17
sh4d°_°ff, понял, спасибо за разъяснение!
Dimiona
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 24
28.11.2009, 17:33  [ТС]     Cи++. Оператор switch. #18
Ну так она ж выдает правильный ответ. Сколько бы я не вводила. Или я Вас не понимаю

Добавлено через 1 минуту
Так правильно или нет?
sh4d°_°ff
ex-close383
1255 / 278 / 19
Регистрация: 31.10.2009
Сообщений: 1,429
28.11.2009, 17:43     Cи++. Оператор switch. #19
)))) блин.. не знаю как через свич это решить... но можно немного схитрить посмотрите вот этот код))))):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int n = StrToInt(Edit1->Text);//ввод н
int k;
k=0;
for (int i=12; i>=1; i--)
{
k=n%i ;
if (k==0)
{
switch (i)
{
case 12: Edit2->Text="dec";//вывод н
break;
case 11: Edit2->Text="dec1";
break;
case 10: Edit2->Text="dec2";
break;
case 9: Edit2->Text="dec3";
break;//и так далее
}
i=0;
}
}
у себя проверил ваш код... вроде верно... я предполагал возможность одной ошибки, но видимо просто я туплю))))
Dimiona
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 24
28.11.2009, 17:53  [ТС]     Cи++. Оператор switch. #20
Так то оно так. Только вот видимо си у нас примитивный преподают. И нет у нас эдит всяких..может я че не догоняю(
sh4d°_°ff
ex-close383
1255 / 278 / 19
Регистрация: 31.10.2009
Сообщений: 1,429
28.11.2009, 17:59     Cи++. Оператор switch. #21
да все вы правильно догоняете)))))) нам тоже его преподавали на первом курсе.. я нисколько не хочу преуменьшить важность изучения си "примитивного" хДД но так то с едитами он мне больше по душе)))) да и неплохо б чтобы его тоже давали.. кстати код правильный, понял в чем я протупил =)
Dimiona
0 / 0 / 0
Регистрация: 28.11.2009
Сообщений: 24
28.11.2009, 18:02  [ТС]     Cи++. Оператор switch. #22
sh4d°_°ff, спасибо, что посмотрел))...
Спасибо Вам
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
28.11.2009, 18:37     Cи++. Оператор switch. #23
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
#include <iostream>
 
using std::cin;
using std::cout;
 
/* 0-11 */
char *months[] = { "jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sen", "nov", "dec" };
 
void print(int cur)
{
    cout << "current month: " << months[cur] << "/n";
}
 
void dimiona(void)
{
    int n; // количество прошедших месяцев
 
    cout << "Enter a number (of months) 'n': "; // введите число n
    cin >> n;
 
    n %= 12; // остаток от деления
 
    switch ( n )
    {
    case 0: print(n); break;
    case 1: print(n); break;
    case 2: print(n); break;
    case 3: print(n); break;
    case 4: print(n); break;
    case 5: print(n); break;
    case 6: print(n); break;
    case 7: print(n); break;
    case 8: print(n); break;
    case 9: print(n); break;
    case 10: print(n); break;
    case 11: print(n); break;
    case 12: print(n); break;
        break;
    }
}
 
int main(int argc, char **argv)
{
    dimiona();
 
    system("pause");
    return 0;
}
Добавлено через 1 минуту
опоздал, да?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.11.2009, 18:44     Cи++. Оператор switch.
Еще ссылки по теме:

Оператор switch - C++
Сделать с помощью оператора switch: a*pow(x+7)-b когда x&lt;5 &amp;&amp; b!=0; (x-c*d)/a*x когда x&gt;5 &amp;&amp; b==0; x/c в других случаях. ...

оператор Switch???? - C++
Люди добрые помогите что здесь не так не пойму #include&lt;conio.h&gt; #include&lt;stdio.h&gt; #include&lt;iostream&gt; using namespace std; ...

Оператор switch - C++
Помогите переправить задачу на оператор switch, пож-та. Я написал с предусловием, но как быть со switch'ом не знаю. Вот код с...

Оператор switch и while - C++
Для целого числа к от 1 до 99 напечатать фразу «Мне к лет», учитывая при этом, что при некоторых значениях к слово «лет» надо заменить...

Оператор switch - C++
Возникла проблема. Не хочет высчитываться &quot;v&quot;. Что не так? #include &lt;iostream.h&gt; #include &lt;math.h&gt; main () { int k; double...


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

Или воспользуйтесь поиском по форуму:
sh4d°_°ff
ex-close383
1255 / 278 / 19
Регистрация: 31.10.2009
Сообщений: 1,429
28.11.2009, 18:44     Cи++. Оператор switch. #24
ога)) но все же посмотри ее вариант))) он вроде попроще))) хотя в принципе такой же
Yandex
Объявления
28.11.2009, 18:44     Cи++. Оператор switch.
Ответ Создать тему
Опции темы

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