![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Кароче ребята такое дело, мне надо оч срочно решить 1-ну проблемку.
У нас есть строка, в ней что то записано, вот. Надо посчитать так называемые количество (параметров). -Параметры могут содержать латинские буквы и пробелы. Если параметр содержит пробелы, он должен обрамляться кавычками. То-есть. Дана строка: assa "er fgh" fgh "ghg hh" gfghh На экране должно высветиться 5. Это кусочек из олимпиадной задачи, которую мне завтра надо сдать, помогите пожалуйста. Моя подпись Последний раз редактировалось badsanta165, 18.02.2009 в 20:03. |
#2
|
|||
|
|||
![]() Ну так и делай.
Идем по строке, как по массиву. Если встречаем пробел, то говорим, что один параметр отловлен. Если встречаем кавычку, то несмотря ни на что топаем до второй кавычки - еще один параметр. Так и считаем. Код:
function CalcParams(AStr : String) : Integer; var I : Integer; begin Result := 0; I := 1; While I <= Length(AStr)Do Begin If AStr[i] = ' ' Then Begin Inc(Result); End Else If AStr[i] = '"' Then Begin Inc(I); While (AStr[i] <> '"') And (I <= Length(AStr)) Do Inc(I); End; Inc(I); End; If AStr <> '' Then Inc(Result); // 1 param. end; Вроде так. |
#3
|
|||
|
|||
![]() Блин ребята весь день мучаюсь, мож кто решит. У меня уже сил нету.
Вот условие : Интерфейс командной строки является одним из известнейших и старейших способов взаимодействия человека и компьютера. Рассмотрим упрощенные правила формирования команд в интерфейсе: 1. Команда состоит только из набора латинских букв 2. Команда может иметь параметры и опции 3. Параметры и опции отделяются друг от друга и от команды произвольным кол-вом пробелов, порядок следования опций и параметров — произволен. 4.Параметры могут содержать латинские буквы и пробелы. Если параметр содержит пробелы, он должен обрамляться кавычками 5.Опции могут содержать латинские буквы и начинаются со знаков "-" или "/". Создать программу, которая получает на входе (файл input.txt или стандартный входной поток) строку, содержающую команду (возможно — с параметрами и опциями). Проанализировав команду, программа должна возвратить (файл output.txt или стандартный выходной поток) слово «Error», если строка не соответствует стандарту формирования команд. В противном случае программа должна возвратить количество параметров и опций команды (два числа через пробел). Пожалуйста - вопрос жизни и смерти!!!! Моя подпись |
#4
|
||||
|
||||
![]() без вопросов, Go to в платный раздел, моя цена - $20.
ЗЫЖ Если сроки сильно срочные (типа от часу до 12) - то $50 Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |