![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Gunslinger |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 30.12.2006 Где: Астрахань Репутация: 1 Всего: 3 |
Привет! Проблема такая. Есть табличка эксел, нужно подсчитать количество строк. Подсчет виду по одному полю:
В результате вместо: количество строк= 14, последний адрес=А25 выдает: кол-во строк=15, последн. адрес=А26. Основной код:
Проблемный метод:
|
||||||
|
|||||||
Fazil6 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: 35 Всего: 60 |
|
|||
|
||||
Gunslinger |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 30.12.2006 Где: Астрахань Репутация: 1 Всего: 3 |
Fazil6, тогда: кол-во строк=14, а вто последний адрес не меняется - А26.
|
|||
|
||||
mes |
|
||||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
А12+14 строк = А26 ! // правильно Ваш цикл останавливается на пустой строке
А26 - пустая ! // и тут правильно Если хотите останавливаться на предпоследней строке, то 1. либо сохраняйте предыдущий адрес 2. либо заведите дополнительную переменную-клетку, которая будет тестировать на пустоту строки 3. либо добавьте метод SetPrevAddr 4... Перед тем как писать код, старайтесь в голове сформулировать чего Вы хотите получить в итоге, тогда и подобных казусов не будет.. Это сообщение отредактировал(а) mes - 29.12.2008, 13:38 |
||||
|
|||||
Gunslinger |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 30.12.2006 Где: Астрахань Репутация: 1 Всего: 3 |
mes, я думал do-while вополнится до встречи с пустой строкой, при этом, если строка окажется пустой, то адрес не увеличится. ошибся.
Теперь все корректно выводит. Спасибо за помощь. |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
Но цикл выглядит , как бы помягче сказать, не очень красиво. |
|||
|
||||
Gunslinger |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 30.12.2006 Где: Астрахань Репутация: 1 Всего: 3 |
||||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
Вот попытался подправить, если конечно правильно понял, что требуется:
Взаимно! и всего самого самого! ![]() Это сообщение отредактировал(а) mes - 31.12.2008, 14:13 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |