Перейти к содержанию

С++ Любимый


Рекомендуемые сообщения

Не подскажите почему

if (a[1]==1||a[2]!=0){действие}(это же коньюнкция ?!)

Даже если условие не выполняеться оно всё равно работает

Мне надо что бы если второе число равнялось 1, а 3 число не равнялось 0 выполнялось действие else другое действие...

Писал и дизьюнкцию && то тогда не пашет...

Или я чтото потаю ?:(

Короче скину свою убогу прогу Может дело не в етом ?:)...

Begin78. Дано целое число в диапазоне 100 – 999.

Вывести строку — словесное описание данного числа,

например: 256 — "двести пятьдесят шесть", 814 —

"восемьсот четырнадцать".

#include "stdafx.h"

#include <iostream.h>

#include <string.h>

void main() {

char a[3];

cout<<"Enter number";

for(int i=0;i<3;i++)

cin>>a;

switch(a[0]){

case '1': cout<<"sto "; break;

case '2': cout<<"dvesti "; break;

case '3': cout<<"trista "; break;

case '4': cout<<"4eturista "; break;

case '5': cout<<"p9tsot "; break;

case '6': cout<<"shisot "; break;

case '7': cout<<"simsot "; break;

case '8': cout<<"vosimsot "; break;

case '9': cout<<"dev9tsot "; break;

}

if (a[1]==1&&a[2]!=0) ^108^ {

switch(a[2]){

case '1': cout<<"odinatsat6 "; break;

case '2': cout<<"dvenadsat6 "; break;

case '3': cout<<"trinadsat6 "; break;

case '4': cout<<"4eturnadsat6 "; break;

case '5': cout<<"p9tnadsat6 "; break;

case '6': cout<<"shesnadsat6 "; break;

case '7': cout<<"semnadsat6 "; break;

case '8': cout<<"vosimnadsat6 "; break;

case '9': cout<<"dev9tnadsat6 "; break;

}

}

else{

switch(a[1]){

case '1': cout<<"des9t6 "; break;

case '2': cout<<"dvadcat6 "; break;

case '3': cout<<"tritsat6 "; break;

case '4': cout<<"4orok "; break;

case '5': cout<<"p9dis9t "; break;

case '6': cout<<"shesdis9t "; break;

case '7': cout<<"semdis9t "; break;

case '8': cout<<"vosims9t "; break;

case '9': cout<<"dev9nosto "; break;

}

switch(a[2]){

case '1': cout<<"odin "; break;

case '2': cout<<"dva "; break;

case '3': cout<<"tri "; break;

case '4': cout<<"4eture "; break;

case '5': cout<<"p9t6 "; break;

case '6': cout<<"shest6 "; break;

case '7': cout<<"sem6 "; break;

case '8': cout<<"vosim "; break;

case '9': cout<<"dev9t6 "; break;

}

}

cout<< endl;

}

Изменено пользователем Arti
Ссылка на сообщение
Поделиться на другие сайты

|| - это же условие или вроде, потому они и не работает. А почему нельзя записать значение через интовую переменную, и потом перегнать ее в чар? Можно попробовать поделить на массив потом.

ЗЫ: можно подключить библиотеку одну и не писать на англ, а норм на русском

Ссылка на сообщение
Поделиться на другие сайты

#include <Windows.h>

потом в void main()

SetConsoleOutputCP(1251);

и потом в свойствах консоли есть шрифты, ставишь Lucida Console. Так смотрится как-то по приятнее.

А зачем строку вводить через цикл, ведь можно через cin.get или cin.getline

Ссылка на сообщение
Поделиться на другие сайты

так как мне решить проблему :( Надо что бы при вводе 11 писало не десять один а 11...

Ссылка на сообщение
Поделиться на другие сайты

так как мне решить проблему :( Надо что бы при вводе 11 писало не десять один а 11...

по коду плохо видно, у тебя идут свичи друг после друга и она выводит последовательно, тебе надо сделать переменную, например char str[50] и потом после каждого прохода свича дописывать в нее значения, например сто -> пробел -> пятьдесят -> пробел -> один

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...