![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
kirkakirya |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 4.7.2009 Репутация: нет Всего: нет |
Вообще, задача звучит так:
Строка содержит арифметическое выражение, состоящее из целых чисел и знаков операций: -,+*,/. Проверить корректность выражения (в смысле последовательности чисел и знаков операций) Когда я запускаю задачу, то почему-то введенные мной символы выводятся в виде псевдографики, не так как надо. К тому же Ввод почему-то "затягивается", т.е. на ввод запрашивается не 20 символов, как я просил, а больше. в чем бело, посмотрите пож-та! #include <stdio.h> #include <stdlib.h> #include <conio.h> void main (void) { clrscr(); char A[20],z,s,sym[]={'+','-','*','/'}, i,j, a='0'; int symb=0,cif=0; printf ("Введите выражение\n"); do { z=getch(); for (i='0';i<='9';i++) { if (i==z) cif=1; } for (j=0;j<4;j++) { if (z==sym[j]) symb=1; } if (cif==1 || symb==1) { A[a]=z; a++; } // если введенный символ есть цифра либо знак операции, то добавляем его в массив. } }while(a<20||z!=13); Нужно сделать так, чтобы текущий и предыдущий символы не являлись знаками операций. Помогите пож-та додумать. Я пробовал вывести просто этот массив, но он выодит мне какие-то "каракули" Это сообщение отредактировал(а) kirkakirya - 4.7.2009, 07:00 |
|||
|
||||
andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 10 Всего: 33 |
Зачем читать посимвольно? Читай всю строку разом. Ты не правильным путем пошел. Начинай сначала. -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
kirkakirya |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 4.7.2009 Репутация: нет Всего: нет |
то есть прочитать всю строку, а потом проверять?
|
|||
|
||||
andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 10 Всего: 33 |
kirkakirya, Да. Лучше пиши на С++. Проще. Кода меньше.
-------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
kirkakirya |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 4.7.2009 Репутация: нет Всего: нет |
Но мы проходим только С в универе пока что...
|
|||
|
||||
andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 10 Всего: 33 |
kirkakirya, Значит на С.
Вопросы? -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |