Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.07.2010, 12:37   #1
AleksENN
Пользователь
 
Регистрация: 24.06.2010
Сообщений: 17
По умолчанию Вывести на экран горизонтальную линию из символов

От меня требуется разработать программу, которая выводит на экран горизонтальную линию из символов. Число символов, какой использовать символ, и какая будет линия - вертикальная, или горизонтальная - указывает пользователь.
Сделать это нужно с помощью do while
Вот ход мысли:

Код:
#include <iostream>
using namespace std;
void main()
{
	int X,Z;// задаём переменную числа символов
    char Symbol='A';
	cout<<"\n X=:\n";
    cin>>X; 

	do{ // вход в цикл

		// запрос на выбор операции
		cout<<"\n gorizontal=1:\n";
        cout<<"\n vertikal=2:\n";
	  	cin>>Z;   
        
		// анализ действия
		switch(Z){
	   	case  1:    // если пользователь выбрал горизонталь
		     cout<<"Symbol";// вывод 
		     i++;// изменение управляющей переменной
	         cout<<"\n\n";

			break; // остановка switch
	   	case  2:     // если пользователь выбрал вертикаль
			cout<<"Symbol";// вывод 
		    i++;// изменение управляющей переменной
	        cout<<"\n\t";
			break; // остановка switch 
		
	  	default:    // если выбранное действие некорректено
			cout<<"\nError!!! This operator isn't correct\n";			
	  	}
	}
        while(Z!=3);
	cout<<"\nBye....\n";

}
вобщем запутался. Помогите попасть, если можно, в нужное русло)

From Stilet: Неужели так сложно название темы дать адекватное?

Последний раз редактировалось Stilet; 02.07.2010 в 13:36.
AleksENN вне форума Ответить с цитированием
Старый 02.07.2010, 13:12   #2
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Цитата:
Сообщение от AleksENN Посмотреть сообщение
От меня требуется разработать программу, которая выводит на экран горизонтальную линию из символов. Число символов, какой использовать символ, и какая будет линия - вертикальная, или горизонтальная - указывает пользователь.
Ну, конечно, запутался. Даже постановка задачи противоречивая...


Код:
// анализ действия
switch(Z){
case 1: // если пользователь выбрал горизонталь
cout<<"Symbol";// вывод 
i++;// изменение управляющей переменной
cout<<"\n\n";

break; // остановка switch
case 2: // если пользователь выбрал вертикаль
cout<<"Symbol";// вывод 
i++;// изменение управляющей переменной
cout<<"\n\t";
break; // остановка switch
Ну, до этого всё нормально, только вам тут внутри case цикл нужно делать, а вы делаете не понятно что. И ещё какое-то i инкрементите... я даже его объявления не нашёл. Внутри каждого кейза делайте цикл по выводу нужного количества символов и будет вам счастье.
mMAg вне форума Ответить с цитированием
Старый 02.07.2010, 13:21   #3
Snejnaya
Форумчанин
 
Регистрация: 12.05.2010
Сообщений: 219
По умолчанию

что-то как-то криво у тебя...

предлагаю такой вариант:

Код:
char symb;
int dlina, Z, i=0;

printf("vvedite nujniy symvol\n");
scanf("%c",symb);

printf("vvedite dlinu linii\n");
scanf("%d",dlina);

printf("vvedite 1 dla gorizontalnoy linii ili 2 dla verticalnoy");
scanf("%d",Z);

switch Z{
case 1: 
           do
           {cout<<symb;
             i++;
           }
           while (i<dlina);
           break;
case 2:
          do
           {cout<<symb<<endl;
             i++;
           }
           while (i<dlina);
          break;
default: // если выбранное действие некорректено
cout<<"\nError!!! This operator isn't correct\n"; 
}
ЗЫ:если хочешь, меняй все scanf и рrintf на cin и out, или наоборот - как больше нравится.

Последний раз редактировалось Snejnaya; 02.07.2010 в 13:23.
Snejnaya вне форума Ответить с цитированием
Старый 02.07.2010, 13:34   #4
AleksENN
Пользователь
 
Регистрация: 24.06.2010
Сообщений: 17
По умолчанию

Код:
#include <iostream>
using namespace std;
void main()
{
char symb;
int dlina, Z, i=0;

cout<<"vvedite nujniy symvol\n";
cin >>symb;

cout<<"vvedite dlinu linii\n";
cin>>dlina;

cout<<"vvedite 1 dla gorizontalnoy linii ili 2 dla verticalnoy";
cin>>Z;

switch Z{
case 1: 
           do
           {cout<<symb;
             i++;
           }
           while (i<dlina);
           break;
case 2:
          do
           {cout<<symb<<endl;
             i++;
           }
           while (i<dlina);
          break;
default: // если выбранное действие некорректено
cout<<"\nError!!! This operator isn't correct\n"; 
}
}
суть понял но всё равно до ума она у меня недоводится
вот что выдаёт компилятор
cpp(17) : error C2061: syntax error : identifier 'Z'
cpp(17) : error C2143: syntax error : missing ';' before '{'
cpp(18) : error C2046: illegal case
cpp(24) : error C2043: illegal break
cpp(25) : error C2046: illegal case
cpp(31) : error C2043: illegal break
cpp(32) : error C2047: illegal default
7 error(s), 0 warning(s)
AleksENN вне форума Ответить с цитированием
Старый 02.07.2010, 13:38   #5
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Код:
switch Z{
заменить на
Код:
switch (Z){
И т.д. тут только синтаксические ошибки. Неужели поправить самостоятельно не можешь?
mMAg вне форума Ответить с цитированием
Старый 02.07.2010, 13:38   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

switch (Z) {...
если память не изменяет

P.S. mMAg - Синхронно
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.07.2010, 13:44   #7
AleksENN
Пользователь
 
Регистрация: 24.06.2010
Сообщений: 17
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
switch (Z) {...
если память не изменяет

P.S. mMAg - Синхронно
синтаксис моя большая проблема ещё со школьного правописания... а здесь, по замечанию преподавателя ещё с первых домашних, всё вроде понимаю но для чего и где элементарный синтаксис -сплошные ошибки(((
всё получилось -огромное спасибо.
Буду осваивать

From Stilet: Правила форума тоже освоить не помешает.

Последний раз редактировалось Stilet; 02.07.2010 в 13:47.
AleksENN вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести на экран сообщение JeyKip Win Api 1 02.04.2010 21:10
Как вывести на экран \n в С++ nicklan Общие вопросы C/C++ 4 30.03.2010 17:02
Разработать программу на С++,которая выводит на экран горизонтальную линию из звездочек. mephistophel Помощь студентам 1 11.03.2010 00:43
Вывести строку на экран Dasharnb777 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 13.02.2010 18:59
Найти и вывести на экран группы с четным количеством символов. задачи Си. Kventin Помощь студентам 13 29.12.2008 16:29