Другие языки программирования и технологии
Надо решить с Операторами switch и case of в С++
Напишите программу для любознательного, но туповатого путешественника, которая при наборе страны выдаст на экран столицу данной страны и количество народа, проживающего в ней.
#include <iostream>
#include <string>
using namespace std;
int main() {
wcout.imbue(locale("rus_rus.866"));
wcin.imbue(locale("rus_rus.866"));
wstring countries[] = {
L"",
L"Ангола",
L"Бангладеш",
L"Венесуэла",
L"Гондурас",
L"Доминиканская республика",
L"Египет",
L"Замбия",
L"Израиль",
L"Йемен",
L"Камбоджа",
L"Лаос",
L"Мадагаскар",
L"Непал",
L"Оман",
L"Перу",
L"Руанда",
L"Сент-Китс и Невис",
L"Тринидад и Тобаго",
L"Уругвай",
L"Фиджи",
L"Хорватия",
L"Центральноафриканская Республика",
L"Черногория",
L"Шри-Ланка",
L"Эритрея",
L"Южный Судан",
L"Ямайка"
};
wstring country;
wcout << L"Введите название страны: "; wcin >> country;
bool flag = true;
int k = 0;
for (int n = 1; n < sizeof(countries) / sizeof(wstring); n++)
if (country == countries[n]) {
k = n; flag = false; break;
}
if (flag) wcout << L"\aОшибка! Страны нет в списке. ";
else switch (k) {
case 1: wcout << L"Луанда, 18 498 000"; break;
case 2: wcout << L"Дакка, 142 319 000"; break;
case 3: wcout << L"Каракас, 29 335 489"; break;
case 4: wcout << L"Тегусигальпа, 7 875 204"; break;
case 5: wcout << L"Санто-Доминго, 9 650 054"; break;
case 6: wcout << L"Каир, 80 898 000"; break;
case 7: wcout << L"Лусака, 12 935 000"; break;
case 8: wcout << L"Иерусалим, 7 836 000"; break;
case 9: wcout << L"Сана, 24 799 880"; break;
case 10: wcout << L"Пномпень, 14 805 000"; break;
case 11: wcout << L"Вьентьян, 6 500 000"; break;
case 12: wcout << L"Антананариву, 20 042 552"; break;
case 13: wcout << L"Катманду, 30 000 000"; break;
case 14: wcout << L"Маскат, 2 409 000"; break;
case 15: wcout << L"Лима, 29 461 933"; break;
case 16: wcout << L"Кигали, 10 746 311"; break;
case 17: wcout << L"Бастер, 49 898"; break;
case 18: wcout << L"Порт-оф-Спейн, 1 299 953"; break;
case 19: wcout << L"Монтевидео, 3 256 000"; break;
case 20: wcout << L"Сува, 849 000"; break;
case 21: wcout << L"Загреб, 4 483 804"; break;
case 22: wcout << L"Банги, 4 038 000"; break;
case 23: wcout << L"Цетине, 626 000"; break;
case 24: wcout << L"Шри-Джаяварденепура-Котте, 21 338 000"; break;
case 25: wcout << L"Асмэра, 5 073 000"; break;
case 26: wcout << L"Джуба, 8 260 490"; break;
case 27: wcout << L"Кингстон, 2 868 380"; break;
}
cin.get(); cin.get();
return 0;
}
#include <string>
using namespace std;
int main() {
wcout.imbue(locale("rus_rus.866"));
wcin.imbue(locale("rus_rus.866"));
wstring countries[] = {
L"",
L"Ангола",
L"Бангладеш",
L"Венесуэла",
L"Гондурас",
L"Доминиканская республика",
L"Египет",
L"Замбия",
L"Израиль",
L"Йемен",
L"Камбоджа",
L"Лаос",
L"Мадагаскар",
L"Непал",
L"Оман",
L"Перу",
L"Руанда",
L"Сент-Китс и Невис",
L"Тринидад и Тобаго",
L"Уругвай",
L"Фиджи",
L"Хорватия",
L"Центральноафриканская Республика",
L"Черногория",
L"Шри-Ланка",
L"Эритрея",
L"Южный Судан",
L"Ямайка"
};
wstring country;
wcout << L"Введите название страны: "; wcin >> country;
bool flag = true;
int k = 0;
for (int n = 1; n < sizeof(countries) / sizeof(wstring); n++)
if (country == countries[n]) {
k = n; flag = false; break;
}
if (flag) wcout << L"\aОшибка! Страны нет в списке. ";
else switch (k) {
case 1: wcout << L"Луанда, 18 498 000"; break;
case 2: wcout << L"Дакка, 142 319 000"; break;
case 3: wcout << L"Каракас, 29 335 489"; break;
case 4: wcout << L"Тегусигальпа, 7 875 204"; break;
case 5: wcout << L"Санто-Доминго, 9 650 054"; break;
case 6: wcout << L"Каир, 80 898 000"; break;
case 7: wcout << L"Лусака, 12 935 000"; break;
case 8: wcout << L"Иерусалим, 7 836 000"; break;
case 9: wcout << L"Сана, 24 799 880"; break;
case 10: wcout << L"Пномпень, 14 805 000"; break;
case 11: wcout << L"Вьентьян, 6 500 000"; break;
case 12: wcout << L"Антананариву, 20 042 552"; break;
case 13: wcout << L"Катманду, 30 000 000"; break;
case 14: wcout << L"Маскат, 2 409 000"; break;
case 15: wcout << L"Лима, 29 461 933"; break;
case 16: wcout << L"Кигали, 10 746 311"; break;
case 17: wcout << L"Бастер, 49 898"; break;
case 18: wcout << L"Порт-оф-Спейн, 1 299 953"; break;
case 19: wcout << L"Монтевидео, 3 256 000"; break;
case 20: wcout << L"Сува, 849 000"; break;
case 21: wcout << L"Загреб, 4 483 804"; break;
case 22: wcout << L"Банги, 4 038 000"; break;
case 23: wcout << L"Цетине, 626 000"; break;
case 24: wcout << L"Шри-Джаяварденепура-Котте, 21 338 000"; break;
case 25: wcout << L"Асмэра, 5 073 000"; break;
case 26: wcout << L"Джуба, 8 260 490"; break;
case 27: wcout << L"Кингстон, 2 868 380"; break;
}
cin.get(); cin.get();
return 0;
}
где просьба? где твои примерные наброски программы? где хотя бы вознаграждение за наши труды?
ИДИ ЧИТАЙ УЧЕБНИК ПО С++, ЖЕЛАТЕЛЬНО ГЕРБЕРТ ШИЛДТ С++ БАЗОВЫЙ КУРС
ИДИ ЧИТАЙ УЧЕБНИК ПО С++, ЖЕЛАТЕЛЬНО ГЕРБЕРТ ШИЛДТ С++ БАЗОВЫЙ КУРС
Похожие вопросы
- помогите решить задачи оператор switch решение нужно visual studio (C)
- C++. В операторе switch нельзя разве использовать case x? а x пробежать в цикле for?
- Помогите пожалуйста найти ошибку. Паскаль. Оператор Case of
- C++ оператор switch задача
- Как на языке С++ сделать вывод 5 задач через switch-case?
- программа с помощью оператора case (C++)
- как можно переписать эту программу, чтобы использовался оператор case?
- Нужно ли знать switch case, если есть обычный If else, стоит ли забивать себе этим голову?
- Помогите написать программу со switch в СИ
- Помогите пожалуйста составить программу на Паскале, используя оператор case