1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
|
||||||
1 | ||||||
Определить все данные, тип которых вводится из командной строки01.03.2012, 10:21. Показов 4129. Ответов 23
Метки нет (Все метки)
Файл содержит символы, слова, целые числа и числа с плавающей запятой.
Определить все данные, тип которых вводится из командной строки. для определения типы делаю так:
мыслей, как организовать в самой строке слова с числами находить нет вовсе...
0
|
01.03.2012, 10:21 | |
Ответы с готовыми решениями:
23
Определить все данные, тип которых вводится из командной строки. Вводится число N. Определить количевство одинаковых и неодинак Вводится число N . Определить, все ли цыфры разные; естли нет, тоговых цыфр в числе. Вывести все переменные среды, названия которых начинаются на букву, которая задана дополнительным аргументом параметра командной строки "х". Создать классы, спецификации которых приведены ниже. Определить конструктор и методы get Тип(), get Тип(), show Информ() |
Заблокирован
|
||||||
01.03.2012, 11:10 | 2 | |||||
С int-ом правда не вышло, т.к. int воспринимается sscanf как double
Ну да ладно вам главное же сам принцип
Parameters of command line int : 2 int : 2 int : -11 string : test
0
|
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
01.03.2012, 11:24 | 3 |
А то из описания в посте #1 ничего не понятно Добавлено через 2 минуты
0
|
Заблокирован
|
||||||
01.03.2012, 11:32 | 4 | |||||
Немного пораскинув мозгами написал универсальный код - в командную строку передаём параметры(их тип указывать не надо - алгоритм сам всё сделает и распознает)
0
|
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
|
|
01.03.2012, 12:39 [ТС] | 5 |
Спасибо огромное, но задание другое..
В файле есть строка "вава в 45 45.4 45.67 валдвдал в" Далее я в командной строке задаю int например, а программа считывает строку из файла и находит в ней int. и так для всех типов. Буду пытаться пробовать...
0
|
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
|
|
01.03.2012, 19:35 [ТС] | 7 |
Все равно ничего не выходит, все перепробовал для определения типа, не сравнивает...
0
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,679
|
||||||
01.03.2012, 21:04 | 8 | |||||
Тебе нужно считать файл пословно в массив элементов типа char*. а затем каждый из элементов прогнать через эту функцию
0
|
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
|
|
01.03.2012, 21:05 [ТС] | 9 |
я просил всего алгоритм...
0
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,679
|
|
01.03.2012, 21:15 | 10 |
Алгоритм такой:
1) Считываешь файл пословно в мссив элементов типа char; рассматриваешь каждый элемент (в дальнейшем temp) 2) Смотришь, если (atoi (temp) возвращает не ноль и в temp отсутствует точка), то это целое число 3) Иначе: если (длина temp равна 1 и этот единственный символ '0'), о это целое число (какое- догадайся сам!) 4) Иначе: если atof (temp) возвращает не ноль, то temp дробное число 5) Иначе: если длина temp равна 1, то temp символ 6) иначе temp строка, всё! Добавлено через 1 минуту
0
|
|
01.03.2012, 21:18
#11
|
Не по теме: kravam, сожги свой код - ужасный до ужаса!!!Да и ещё не по заданию - где командная строка argv и argc?:-|!Liv-pooL, чуть позже отпишисуь нормальным кодом, подождите до часа мне пока не до писанины на форуме...
1
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,679
|
|
01.03.2012, 21:27 | 12 |
Код как код. Он делает то, что делает и не более. Кроме командной сроки надо прикручивать ещё считывание с файла- ну пусть Liv-pooL, сам этим и занимается. Я так решил.
0
|
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
|
|
01.03.2012, 21:57 [ТС] | 13 |
Спасибо за помощь. Считать я бы смог, вот как проверить аргумент командной строки, что в нем написанно, не получается.. я сравнивал разными ф-ями, что находил в инете, ничего....
Если не трудно, простой вопрос: что такое буферизированный ввод-вывод. Где-то в нете пишут что доступ к файлу уже буферизированный ввод-вывод, где-то, что это использование библиотеки fstriam и ее функция по работе с файлами... меня это бонально запутало..
0
|
Заблокирован
|
||||||
01.03.2012, 22:07 | 14 | |||||
Liv-pooL, вот код решающий задачу парсинга из файла.
Данные в файле baba v 45 45.4 45.67 dgskjkh 4 8
1
|
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
|
|
01.03.2012, 22:10 [ТС] | 15 |
Постараюсь сам добить) принцип ясен, додумаем как нить
Добавлено через 59 секунд Юрий, могу у вас по теории иногда консультироваться?
0
|
Заблокирован
|
|
01.03.2012, 22:13 | 16 |
Liv-pooL, Код не идеален, возможно отдохнув несколько позже вернусь чтобы его доработать, пока задачу решаю так как на скринах - т.е. для строк 100% точно для double 75% (иногда захватываются int) и для int если уж быть честным плоховато алгоритм работает, верней кроме ин воспринивмает за данный тип и 4 c 5 в числе 45.4 отсюда не совсем корректная работа. Возможно лучше считывать файл в текстовый буфер, разбить на токены посредством strtok и затем уж анализировать полученные куски информации. Если никто не доведёт по свободе реализую именно данную логику...
Добавлено через 1 минуту
1
|
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
|
|
01.03.2012, 22:15 [ТС] | 17 |
Тошгда позже, если нге сложно помогите с вопросом то такое буферизированный ввод-вывод. Где-то в нете пишут что доступ к файлу уже буферизированный ввод-вывод, где-то, что это использование библиотеки fstriam и ее функция по работе с файлами... меня это бонально запутало..
0
|
Заблокирован
|
|
01.03.2012, 22:22 | 18 |
Думаю это лаконичный и простой для понимания ответ
Потоковый I/O -- буферизированный: Это означает, что блок данных фиксировнного размера читаентся/пишется в файл не непосредственно, а через временную область хранения (буфер). http://mech.math.msu.su/~zubr/node18ru.html
1
|
1 / 1 / 0
Регистрация: 17.04.2011
Сообщений: 142
|
|
01.03.2012, 22:24 [ТС] | 19 |
спасибо)
0
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,679
|
||||||
01.03.2012, 23:07 | 20 | |||||
Командная строка значит командная строка. Переделал прошлый свой код. Запускать из консоли:
main.exe имя_типа Считает корректными именами типов следующие имена: int, float, double, char, char*; на всё остальное ругается. В принципе ты можешь сделать так, чтобы программа реагировала на любой тип- хоть на авторский, без разницы. Просто поправь исходник и всё.
Объясните значение argc и argv
0
|
01.03.2012, 23:07 | |
01.03.2012, 23:07 | |
Помогаю со студенческими работами здесь
20
Определить и вывести на экран построчно только те строки, все элементы которых положительны Как с помощью командной строки в Windows 7 в разделе на диске установить тип раздела 0х12 Определить, есть ли в матрице строки, все элементы которых равны нулю, за исключением последнего Определить, есть ли в матрице строки, все элементы которых равны нулю, за исключением последнего Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |