Форум программистов, компьютерный форум, киберфорум
Наши страницы

Switch - case vs While loop - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сформировть массив по правилу http://www.cyberforum.ru/cpp-beginners/thread417781.html
из элементов массива a,заполненного целыми числами,сформировть массив b того же размера по правилу:четные элементы массива a удвоить, нечетные оставить без измененний!
C++ Работа с клавиатурой. Итак, понадобилось поработать с клавой. Прочитал про keybd_event и иже с ними. Но вопрос-можно ли отключить клавиатуру? То есть, чтобы при нажатии клавиш ничего не происходило? Выдернуть шнур не... http://www.cyberforum.ru/cpp-beginners/thread417779.html
задача на Массив C++
Дан масив Скопировать все его элементы в другой массив такого же размера в обратном порядке расположения элементов
C++ [C++] Указатели весчь ?
Хочу узнать + и - указателей и узнать у народа пользуетесь ли вы ими или нет
C++ Обмен значений между двумя вещественными переменными. http://www.cyberforum.ru/cpp-beginners/thread417763.html
Помогите пожалуйста, решить задачи =))) Разработайте процедуру, которая получает через параметры две вещественные переменные х, у и обменивает переменные их значениями. Например, до вызова...
C++ Написать программу нахождения суммы чисел по правилу (n-нечетное) a^1 + a^3 + a^5 + ... + a^n подробнее

Показать сообщение отдельно
Leeto
7 / 7 / 0
Регистрация: 23.12.2011
Сообщений: 372
Записей в блоге: 1
26.12.2011, 13:14  [ТС]
Цитата Сообщение от KATbIK Посмотреть сообщение
break; - убери
не что то так не работает.

Код
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
using namespace std;
char ch;

int main ()
{
  
  cout <<"enter your text: " ;
  cin >> ch; 


    int numChars = 0; 
	int numLines = 0;
	int numWords = 0;

	char chW = ' '||'\t' ||'\n';


		switch (ch=getchar()!= 4)
    {
		
	case  ' ' : numWords++; 

	case '\t' : numWords++; 

	case '\n' : numWords++; numLines++; 

	default  :	numChars++; 
			 
    }

	

	numLines += 1; // for some reason it needs to add one and the results are correct

 cout << "CharCounter results: " << numChars;
 cout << endl;

 cout <<"WordsCounter results: " << numWords;
 cout << endl;

 cout <<"LinesCounter results: " << numLines;
 cout << endl;

  system ("pause");
  return 0;
}
Но я вот так сделал вроде нормально. Мож как то проще можно ?

Код
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
using namespace std;
char ch;

int main ()
{
  
  cout <<"enter your text: " ;
  cin >> ch; 


    int numChars = 0; 
	int numLines = 0;
	int numWords = 0;

	char chW = ' '||'\t' ||'\n';
	while ((ch=getchar())!= 4)
		switch (ch)
    {
		
	case  ' ' : numWords++; break;

	case '\t' : numWords++; break;

	case '\n' : numWords++; numLines++; break;

	default  :	numChars++; break;
			 
    }

	

	numLines += 1; // for some reason it needs to add one and the results are correct

 cout << "CharCounter results: " << numChars;
 cout << endl;

 cout <<"WordsCounter results: " << numWords;
 cout << endl;

 cout <<"LinesCounter results: " << numLines;
 cout << endl;

  system ("pause");
  return 0;
}
Заранее спасибо !
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru