Форум программистов, компьютерный форум CyberForum.ru

циклы в файле - C++

Восстановить пароль Регистрация
 
olga32
0 / 0 / 0
Регистрация: 15.06.2011
Сообщений: 17
26.10.2011, 19:10     циклы в файле #1
Подскажите пожалуйста , если дан файл состоящий из двухбайтовых слов и нескольких кадров, в каждом кадре 4091 слово или 8182 байта. Сначала надо найти слово с 1-цей в 14-м разряде затем в слово с 1-цей в 16-м разряде, а затем проделывать это в каждом последующем кадре. У меня начинается поиск в том же кадре, а как начинать поиск каждый раз в последующем кадре?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mimicria
return (true);
 Аватар для mimicria
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
26.10.2011, 19:15     циклы в файле #2
Исходник может всё-таки приложите или предлагаете угадывать?
olga32
0 / 0 / 0
Регистрация: 15.06.2011
Сообщений: 17
26.10.2011, 19:47  [ТС]     циклы в файле #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdlib.h>
#include <stdio.h>
 
int main(void) {
 
    typedef unsigned short word;
 
    FILE*  fp  = fopen("word.txt", "rb");
    word   w;
    int    pos  = 0, nb = 13;
 
    while(fread((void*)&w, sizeof(word), 1u, fp) != 0) {
         if( w >> nb & 0x1 ) {
              printf("find bit - %d to pos = %d\n", nb + 1, pos);
              nb += 2;
              if(nb > 15)
                  break;
         }
         pos++;
    }
    fclose(fp);
 
    getchar();
    return 0;
}
 Комментарий модератора 
Используйте теги форматирования кода!
mimicria
return (true);
 Аватар для mimicria
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
28.10.2011, 10:01     циклы в файле #4
Я что-то не очень понял, в 1 word мы посмотрели 14 разряд, во втором 16 разряд, в следующий раз еще +2 прошли и вылетели из цикла, потому как nb=17
Цитата Сообщение от olga32 Посмотреть сообщение
if(nb > 15) break;
Yandex
Объявления
28.10.2011, 10:01     циклы в файле
Ответ Создать тему
Опции темы

Текущее время: 04:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru