Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите с циклом 
V
    Опции темы
DedMazai
  Дата 6.7.2009, 01:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 6.7.2009
Где: Лобня

Репутация: нет
Всего: нет



Вечер добрый )
Не могли бы вы подсказать как сделать, чтобы цикл:
Код
     
TStrings *line = new TStringList();
     line->LoadFromFile("vopros.txt");
     for(int i=0;i<10;i++)
     {
          if(line->Text.Pos(IntToStr(i)))
          {
               Edit1->Text = "Есть";
               break;
          }
          else
               Edit1->Text = "Нету";
     }
     delete line;

читал только чётные строки, и как сделать, чтобы он подсчитал в них кол-во символов?
PM MAIL ICQ   Вверх
triclosan
Дата 6.7.2009, 01:40 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 18.8.2006

Репутация: 2
Всего: 12



TStringList это точно не по стандарту си++, вы видимо разделом ошиблись

Код

     for(int i=0;i<10;i+=2)
     {
          ***
     }


PM MAIL   Вверх
DedMazai
Дата 6.7.2009, 01:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 6.7.2009
Где: Лобня

Репутация: нет
Всего: нет



Цитата(triclosan @  6.7.2009,  01:40 Найти цитируемый пост)
TStringList это точно не по стандарту си++, вы видимо разделом ошиблисьКодincludeSyntax('cpp');     for(int i=0;i<10;i+=2)     {          ***     }

Хм, а что тогда по стандарту с++? smile
На сколько я понял вы предложили просто поменять 1 на 2? 

PM MAIL ICQ   Вверх
triclosan
Дата 6.7.2009, 01:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 18.8.2006

Репутация: 2
Всего: 12



Цитата(DedMazai @  6.7.2009,  01:49 Найти цитируемый пост)
Хм, а что тогда по стандарту с++?

это у вас борланд видимо. Покажите определение класса TStringList

Цитата(DedMazai @  6.7.2009,  01:19 Найти цитируемый пост)
читал только чётные строки

поясните
PM MAIL   Вверх
Данкинг
Дата 6.7.2009, 01:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



DedMazai, это по стандарту билдера. smile Кстати, есть уже похожая тема:
тык
 smile 

Цитата(DedMazai @  6.7.2009,  02:19 Найти цитируемый пост)
чтобы он подсчитал в них кол-во символов?

Text.Length() ?

Добавлено через 1 минуту и 37 секунд
Цитата(DedMazai @  6.7.2009,  02:19 Найти цитируемый пост)
читал только чётные строки

Код

for(int i=0;i<10;i++)
     {
       if (i%2==0) ShowMessage("Чётная!");
     {

 smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
DedMazai
Дата 6.7.2009, 02:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 6.7.2009
Где: Лобня

Репутация: нет
Всего: нет



Цитата(triclosan @  6.7.2009,  01:52 Найти цитируемый пост)
поясните

Данный цикл, сейчас проверяет в подключённом файле, наличие цифр. Мне надо тоже самое, только чтобы делал он это в чётных строках. и считал сколько в них символов.

Добавлено через 3 минуты и 50 секунд
Цитата(Данкинг @  6.7.2009,  01:53 Найти цитируемый пост)
DedMazai, это по стандарту билдера.  Кстати, есть уже похожая тема:тык  

хах, собственно тема не похожая, а таже smile  друг помогал разобраться с циклом smile не знал что и он тут  smile 
Правда он отправился спать, а я вот продолжаю работу над практикой ))
PM MAIL ICQ   Вверх
mrbrooks
Дата 6.7.2009, 08:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 19
Всего: 306



Цитата(DedMazai @  6.7.2009,  01:19 Найти цитируемый пост)
читал только чётные строки, и как сделать, чтобы он подсчитал в них кол-во символов? 


ты не читаешь строки - ты все залил в одну строку и ее парсишь (причем не по людски). Внимательно почитай справку по данному классу.
PM MAIL   Вверх
DedMazai
Дата 9.7.2009, 20:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 6.7.2009
Где: Лобня

Репутация: нет
Всего: нет



спасибо, нашёл другой способ реализации задания smile)
PM MAIL ICQ   Вверх
hsilgos
Дата 9.7.2009, 20:52 (ссылка) |   (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 26.4.2009

Репутация: 1
Всего: 2



Код

 if (i%2==0) ShowMessage("Чётная!");

Так быстрее:
Код

 if ((i&1)==0) ShowMessage("Чётная!");

 smile 
PM MAIL   Вверх
zim22
Дата 9.7.2009, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(hsilgos @  9.7.2009,  20:52 Найти цитируемый пост)
Так быстрее

и не понятней для "непосвященных"


--------------------
PM MAIL   Вверх
GoldFinch
Дата 9.7.2009, 21:44 (ссылка)    | (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 6
Всего: 26



zim22, если ты не понимаешь математику, это твои проблемы
PM MAIL ICQ   Вверх
zim22
Дата 9.7.2009, 22:04 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(GoldFinch @  9.7.2009,  21:44 Найти цитируемый пост)
 если ты не понимаешь математику, это твои проблемы

не соглашусь. код должен быть написан как можно понятней. кому как понятней - это уже другой вопрос. все нюансы оформления кода должны быть записаны в "стандартах кодирования". это один из этих случаев.
в противном случае программисты будут проверять чётность двадцатью-пятью способами и это затруднит понимание/сопровождение кода.
способ 1:
Код

int a = 5;
if ((a >> 1) << 1 == a)
  std::cout << "even";
else
  std::cout << "odd";

...
способ 25:
Код

int value = 11;
bool odd_flag = false;
for (unsigned i = value; i != 0; i--)
  odd_flag = !odd_flag;

if (odd_flag) std::cout << "odd";
else std::cout << "even";


Это сообщение отредактировал(а) zim22 - 9.7.2009, 22:29


--------------------
PM MAIL   Вверх
GoldFinch
Дата 9.7.2009, 23:26 (ссылка)    | (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 6
Всего: 26



zim22, ты написал бред
есть два типа людей, те которые понимают системы счисления, и те которые их не понимают.

в данном случае надо было получить четность числа. 
известно что у числа в двоичном представлении  младший разряд определяет его четность
соответственно наложение маски выделяющей младший разряд числа позволяет получить число кодирующее четность исходного числа, 0 для нечетных и 1 для четных
также известно что оператор if в С\С++ сравнивает численное значение предиката в скобках с нулем, значит достаточно написать
( i&1 )

для программиста это естественный и логичный путь
программист не знающий систем счисления конечно тоже программист, но еще его называют быдлокодером
конечно тут можно извинить программистов-самоучек не имеющих технического образования, но нормальный программист должен это знать.

Добавлено через 53 секунды
и да, наложение маски само собой быстрее деления
PM MAIL ICQ   Вверх
mes
Дата 9.7.2009, 23:56 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(GoldFinch @  9.7.2009,  22:26 Найти цитируемый пост)
и да, наложение маски само собой быстрее деления 

А Вы уверены, что в результативном (асм) коде будет деление, а не наложение маски ?

Цитата(GoldFinch @  9.7.2009,  22:26 Найти цитируемый пост)
есть два типа людей, те которые понимают системы счисления, и те которые их не понимают.

Да но с лету применять двоичные операции (сейчас уже) большому кругу ЯВУ-программистов  не требуется. smile Особенно учитывая то, что такие операции в книжках разбираются как трюки. smile

Цитата(GoldFinch @  9.7.2009,  22:26 Найти цитируемый пост)
( i&1 )
для программиста это естественный и логичный путь

ага, особенно питоновцам и тому подобным smile Применительно фактически только для ЯНУ-программистов.

Цитата(GoldFinch @  9.7.2009,  22:26 Найти цитируемый пост)
конечно тут можно извинить программистов-самоучек не имеющих технического образования, но нормальный программист должен это знать.

при условии, что это проходят (а не просто пробегают) по образовательной программе. 


Это сообщение отредактировал(а) mes - 9.7.2009, 23:59


--------------------
PM MAIL WWW   Вверх
Данкинг
Дата 10.7.2009, 00:04 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Цитата(hsilgos @ 9.7.2009,  21:52)
Код

 if (i%2==0) ShowMessage("Чётная!");

Так быстрее:
Код

 if ((i&1)==0) ShowMessage("Чётная!");

 smile

Ну так я то же самое ведь написал. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0842 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.