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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2019, 14:27   #1
mirоtvorec
 
Аватар для mirоtvorec
 
Регистрация: 19.06.2012
Сообщений: 9
По умолчанию Ввод условия с клавиатуры

Здравствуйте товарищи. Имеется функция, в которую передается массив In[11], элементы которого являются либо 1 либо 0. Ну и функция возвращает 1 либо 0, в зависимости от того что происходит в if.
Так вот, условие которое используется в if должен задавать пользователь. Как это можно реализовать? Приложение консольное.
Может из файла читать ... помогите пожалуйста

сейчас чтобы приложение работало, реализовано так, что в исходнике руками меняется условие ...
Код:
int Condition (double In[11]){
  if ((In[1]==1 & In[4]==1)||
	 (In[3]==1 & In[4]==1 & In[7]==1)||
	 (In[5]==1 & In[0]==1 & In[9]==1)||
	 (In[1]==1 & In[0]==1 & In[8]==1)
	 ) return 1;
  else return 0;
 }
не знаю нужно не нужно, но вот ссылка на весь проект https://yadi.sk/d/I8MlXrWlUKFS1A, обучение нейросети
ШлюзЪ

Последний раз редактировалось mirоtvorec; 17.02.2019 в 14:45.
mirоtvorec вне форума Ответить с цитированием
Старый 18.02.2019, 19:52   #2
mirоtvorec
 
Аватар для mirоtvorec
 
Регистрация: 19.06.2012
Сообщений: 9
По умолчанию

Товарищи, может быть не понятно объяснил что хочу сделать? Или нельзя реализовать ?
ШлюзЪ
mirоtvorec вне форума Ответить с цитированием
Старый 18.02.2019, 19:56   #3
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Цитата:
Сообщение от mirоtvorec Посмотреть сообщение
Так вот, условие которое используется в if должен задавать пользователь.
Что под этим подразумевается? Если просто какие элементы проверять, то это практически маска. Если посложнее, то та, возможно, уже надо будет минипарсер реализовывать.
p51x вне форума Ответить с цитированием
Старый 18.02.2019, 20:03   #4
mirоtvorec
 
Аватар для mirоtvorec
 
Регистрация: 19.06.2012
Сообщений: 9
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Что под этим подразумевается? Если просто какие элементы проверять, то это практически маска. Если посложнее, то та, возможно, уже надо будет минипарсер реализовывать.
Пользователь в консольке пишет условие вроде такого (In[1]==1 & In[4]==1)||(In[3]==1 & In[4]==1 & In[7]==1)||(In[5]==1 & In[0]==1 & In[9]==1)||(In[1]==1 & In[0]==1).

И вот это условие должно использоваться в if.
ШлюзЪ
mirоtvorec вне форума Ответить с цитированием
Старый 18.02.2019, 20:08   #5
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Тогда парсер. Или вручную, или каким-нибкдь генератором, типа bison.
p51x вне форума Ответить с цитированием
Старый 18.02.2019, 20:11   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

если юзер так будет условие задавать, то из 10 раз ошибется раз 9 ) В таком виде не проще:
Код:
01001000000
00011001000
10000100010
11000000100
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 18.02.2019 в 20:14.
Аватар вне форума Ответить с цитированием
Старый 18.02.2019, 20:22   #7
mirоtvorec
 
Аватар для mirоtvorec
 
Регистрация: 19.06.2012
Сообщений: 9
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Код:
01001000000
11000000100
в таком виде приходят массив In[11], заполненный рандомно 1 и 0. На основании условия которое введет пользователь(т.е. условия может в ввести любое, хоть In[0] == 1) и массива In[] функция возвращает значение.

Ааааа... кажется понял, что вы хотите донести)
ШлюзЪ
mirоtvorec вне форума Ответить с цитированием
Старый 18.02.2019, 20:27   #8
mirоtvorec
 
Аватар для mirоtvorec
 
Регистрация: 19.06.2012
Сообщений: 9
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Тогда парсер
что-то пугающе-незнакомое.
Спасибо за ответы товарищи. На лампочку в голове подали напряжение
ШлюзЪ
mirоtvorec вне форума Ответить с цитированием
Старый 18.02.2019, 21:12   #9
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

(... && ... && .. ) || (... && ...) || (... && ... ) || ...
Код:
012345678901
1  1 1   2 1     --там где 1 надо ==1 там где 2 ==0 ничего(0) значит не проверяем  и все проверки данной строки &&
  1 2  111 2 -- проверить строку аналогично и  результат проверки || к окончательному результату
....          и так столько строк сколько потребуется (а потребуется не более 12)
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 18.02.2019 в 21:17.
evg_m на форуме Ответить с цитированием
Старый 18.02.2019, 21:48   #10
mirоtvorec
 
Аватар для mirоtvorec
 
Регистрация: 19.06.2012
Сообщений: 9
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
(... && ... && .. ) || (... && ...) || (... && ... ) || ...
Код:
012345678901
1  1 1   2 1     --там где 1 надо ==1 там где 2 ==0 ничего(0) значит не проверяем  и все проверки данной строки &&
  1 2  111 2 -- проверить строку аналогично и  результат проверки || к окончательному результату
....          и так столько строк сколько потребуется (а потребуется не более 12)
Спасибо за ответ. С первого прочтения не понял, но обязательно завтра перечитаю и вникну.

А пока реализую свой костылик, сделаю выложу на суд))
ШлюзЪ
mirоtvorec вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ввод с клавиатуры CppForYou Помощь студентам 2 09.10.2014 09:20
Ввод данных через поле, для условия отбора в запросе DeFREEnd Microsoft Office Access 4 27.03.2011 15:25
ввод с клавиатуры Акоб Общие вопросы C/C++ 2 22.02.2011 18:00
Ввод с клавиатуры Von Общие вопросы C/C++ 6 22.10.2010 15:14