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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
lera8
631 / 214 / 26
Регистрация: 03.11.2009
Сообщений: 488
#1

Файлы - C++

19.12.2009, 17:10. Просмотров 496. Ответов 5
Метки нет (Все метки)

Спасите меня от мучений с этими файлами Буду очень вам благодарна
В данном задании необходимо осуществить обработку бинарного файла (или файлов)
согласно условию варианта. Имя файла передается в параметрах командной строки, а если оно
не указано, то вводится с клавиатуры.
Дан файл, содержащий вещественные числа (тип double). Определить сумму чисел,
меньших среднего значения всех чисел в файле.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2009, 17:10     Файлы
Посмотрите здесь:

Пропали файлы на флешке.Вместо них файлы и папки со странными именами - Восстановление данных
Вставил флешку с программами(пользовался ей недавно) и тут такое.... Ни одну папку открыть не могу. Как вернуть нормальные...

Заголовочные файлы .h, файлы исходного когда c/c++ и установление связи между ними - C++
Всем добрый вечер!) Относительно недавно стал изучать c/c++, хочу полюбопытствовать ,так как появился вопрос. Почему при объявлении...

Восстановить удаленные файлы (пропали файлы после нажатия Ctrl +Z) - Восстановление данных
Народ, срочно нужна ваша помощь. Кратко, вчера с флеш-адаптера скопировал себе видео-материал с мероприятия. Сегодня каким-то путем нажал...

Почему не отправляются файлы docx, txt и прочие текстовые файлы? - PHP
Архивы и картинки проверял- отправляются на сервер, а текстовые файлы- нет. Что нужно, чтоб они тоже отправлялись? <?php ...

Как в IntelliJ IDEA скомпилировать исходные файлы в файлы классов - JAVA IDE
Учусь делать апелты <html> <body> <applet code="aplet.class",width="300" height=300> /*</aplet> </body> </html> import...

Не могу открыть файлы Word, jpeg, pdf - файлы повреждены - Удаление вирусов
Помогите, пожалуйста, по-глупости словила вирус. Теперь не открываются файлы Word, jpeg, pdf, пишет файл поврежден, или просмотр...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
19.12.2009, 20:15     Файлы #2
А от чего именно спасать ?
lera8
631 / 214 / 26
Регистрация: 03.11.2009
Сообщений: 488
19.12.2009, 20:32  [ТС]     Файлы #3
От смерти в обнимку с языком Си и не возможностью решить эту задачу
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
19.12.2009, 20:35     Файлы #4
Спасать вижу смысл только тех, кто сам прилагает усилия.
easybudda
Эксперт CЭксперт С++
9465 / 5478 / 927
Регистрация: 25.07.2009
Сообщений: 10,500
19.12.2009, 22:17     Файлы #5
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от lera8 Посмотреть сообщение
Дан файл, содержащий вещественные числа (тип double). Определить сумму чисел,
меньших среднего значения всех чисел в файле.
А сам "файл, содержащий вещественные числа" дадут, или тоже сделать надо?
на всякий случай вот Вам
файлосоздавалка
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
 
/*
*   создавалка двоичного файла, содержащие числа типа double 
*/
 
int main(int argc, char **argv){
    double d;
    FILE *f;
    char buf[BUFSIZ], *p, *file_name;
    
    if ( argc > 1 )
        file_name = argv[1];
    else {
        printf("Name for output file: ");
        if ( !fgets(buf, BUFSIZ, stdin) ){
            perror("Can't get name for file!\n");
            exit(1);
        }
        if ( p = strrchr(buf, '\n') )
            *p = '\0';
        if ( !*buf ){
            perror("Can't get name for file!\n");
            exit(1);
        }
        file_name = buf;
    }
    
    if ( ( f = fopen(file_name, "wb") ) == NULL ){
        perror("Can't open output file!\n");
        exit(1);
    }
    
    while ( 1 ){
        printf("Double value or q for quit: ");
        if ( !fgets(buf, BUFSIZ, stdin) ){
            perror("Can't get value!\n");
            exit(1);
        }
        if ( *buf == 'q' )
            break;
        
        d = strtod(buf, NULL);
        if ( errno == ERANGE ){
            printf("Bad value!\n");
            continue;
        }
        
        if ( fwrite(&d, sizeof(double), 1, f) != 1 ){
            perror("Can't write data to file!\n");
            exit(1);
        }
        printf("Saved to file.\n");
    }
    fclose(f);
    exit(0);
}
а вот
читалка и считалка
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
/*
*   читалка двоичного файла и считалка суммы значений, меньших среднего арифметического 
*/
 
int main(int argc, char **argv){
    double *arr, average, sum;
    FILE *f;
    char buf[BUFSIZ], *p, *file_name;
    size_t count, i;
    long pos;
    
    if ( argc > 1 )
        file_name = argv[1];
    else {
        printf("Name for input file: ");
        if ( !fgets(buf, BUFSIZ, stdin) ){
            perror("Can't get name for file!\n");
            exit(1);
        }
        if ( p = strrchr(buf, '\n') )
            *p = '\0';
        if ( !*buf ){
            perror("Can't get name for file!\n");
            exit(1);
        }
        file_name = buf;
    }
    
    if ( ( f = fopen(file_name, "rb") ) == NULL ){
        perror("Can't open input file!\n");
        exit(1);
    }
    
    fseek(f, 0, SEEK_END);
    pos = ftell(f);
    rewind(f);
    if ( pos % sizeof(double) ){
        fprintf(stderr, "File corrupt!\n");
        exit(1);
    }
    count = pos / sizeof(double);
    if ( !count ){
        fprintf(stderr, "No data in file!\n");
        exit(1);
    }
    
    if ( ( arr = (double*)calloc(count, sizeof(double)) ) == NULL ){
        perror("Bad memory!\n");
        exit(1);
    }
    if ( fread(arr, sizeof(double), count, f) != count ){
        perror("Can't read file!\n");
        exit(1);
    }
    fclose(f);
    
    for ( sum = 0.0, i = 0; i < count; ++i )
        sum += arr[i];
    average = sum / (double)count;
    for ( sum = 0.0, i = 0; i < count; ++i )
        if ( arr[i] < average )
            sum += arr[i];
    
    printf("All %d values:\n", count);
    for ( i = 0; i < count; ++i )
        printf( ( i < count - 1 ) ? "%.2f " : "%.2f\n", arr[i]);
    printf("Average value: %.2f\n", average);
    printf("Sum of elements less than average is: %.2f\n", sum);
    
    free(arr);
    exit(0);
}


Не по теме:

Цитата Сообщение от odip Посмотреть сообщение
Спасать вижу смысл только тех, кто сам прилагает усилия.
Ну ладно Вам, барышня всё-таки...

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2009, 23:01     Файлы
Еще ссылки по теме:

Текстовые файлы. Создать новый файл, объединив исходные файлы - Pascal ABC
даны текстовые файлы Name1 и Name2 .создать Name3 файл объединив Name1 и Name2 текстовые файлы

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

Занесите в отдельные файлы списки студентов различных форм обучения(Типизированные файлы) - Turbo Pascal
Помогите пожалуйста написать программку. Трудно мне даются блин эти файлы... Создайте файл Студент. Занесите в отдельные файлы списки...

Сделать макрос, находящий все файлы .txt и открывающий эти файлы по очереди - VBA
Надо сделать макрос в vba excel , чтобы он находил все файлы txt и открывал после нажатие ок, все файлы txt по очереди! Sub...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
lera8
631 / 214 / 26
Регистрация: 03.11.2009
Сообщений: 488
19.12.2009, 23:01  [ТС]     Файлы #6
easybudda, спасибо вам большое! Обязательно буду стараться разобраться с файлами=) Ещё раз вам спасибо
Yandex
Объявления
19.12.2009, 23:01     Файлы
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru