Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.74/34: Рейтинг темы: голосов - 34, средняя оценка - 4.74
-3 / 0 / 0
Регистрация: 30.06.2011
Сообщений: 9
1

Дан текстовый файл.текст. числа, разделённые пробелами. Найти количество положительных чисел. Удалить строку с min количеством чисел (на С)

30.06.2011, 18:01. Показов 6936. Ответов 4
Метки нет (Все метки)

Дан текстовый файл, состоящий из одной или нескольких строк. Каждая строка файла содержит числа, разделенные пробелами. Найти количество положительных чисел и их среднее арифметическое и вывести на экран. Затем удалить первую строку с минимальным количеством чисел в строке.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.06.2011, 18:01
Ответы с готовыми решениями:

Определить в текстовом файле количество нечетных чисел и записать их в другой текстовый файл
Очень Простая задача

Дан текстовый файл f.txt содержащий действительные числа, найти количество чисел 0, результат вывести на файл g.txt
Дан текстовый файл f.txt содержащий действительные числа, найти количество чисел 0, результат...

Дан текстовый файл f.txt содержащий действительные числа, найти количество чисел 0, результат вывести на файл g.txt
PascalABC Дан текстовый файл f.txt содержащий действительные числа, найти количество чисел 0,...

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

4
933 / 758 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
30.06.2011, 19:26 2
Таки не понял удалить наименьшую строку а дальше куда выводить в файл назад или в консоль, ладно.
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
 
int main(int argc, char* argv[])
{
 
     char   line[1024];
     char*  str;
     int    cnt = 0, sum = 0,
            tmp = sizeof(line);
     long   len = 0L;
 
     FILE* fp = fopen("num.txt", "r" );
 
     while( ! feof(fp) ) {
         line[0] = '\0';
         fgets(line, sizeof(line), fp);
         if(strlen(line) < tmp) {
             tmp = strlen(line);
             len = ftell(fp);
         }
         for(str = strtok(line, " \t\n\r"); str; str = strtok(NULL, " \t\n\r")) {
              if( atoi(str) > -1 ) {
                 sum    += atoi(str);
                 cnt++;
              }
         }
     }
     printf("elapsed = %.1f\n", (float) sum / cnt);
 
     fseek(fp, 0L, SEEK_SET);
     while( ! feof(fp) ) {
         line[0] = '\0';
         fgets(line, sizeof(line), fp);
         if(ftell(fp) != len)
             printf(line);
     }
     fclose(fp);
 
     system("pause");
     return 0;
}
0
Эксперт С++
342 / 306 / 36
Регистрация: 16.06.2009
Сообщений: 486
30.06.2011, 19:56 3
lady_koshe4ka,

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
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <conio.h>
 
#define INPUT_FILENAME "input.txt"
#define MAX_STRING_SIZE 64
 
int main()
{
    char nums_string[MAX_STRING_SIZE];
    FILE* input;
    char* token;
    int nums_positive = 0, sum_positive = 0;
    int number;
 
    if ((input = fopen(INPUT_FILENAME, "r")) == NULL)
    {
        fprintf(stderr, "Can't open file \"%s\"", INPUT_FILENAME);
        _getch();
        _exit(EXIT_FAILURE);
    }
 
    while (fgets(nums_string, MAX_STRING_SIZE, input))
    {
        token = strtok(nums_string, " \n");
        while (token != NULL)
        {
            number = atoi(token);
            if (number > 0)
            {
                ++nums_positive;
                sum_positive += number;
            }
 
            token = strtok(NULL, " \n");
        }
    }
 
    printf("Average is: %.2f\n", (float) sum_positive / nums_positive);
    printf("Number of positive: %d", nums_positive);
 
    return 0;
}
С удалением строки проблем возникнуть не должно..
0
-3 / 0 / 0
Регистрация: 30.06.2011
Сообщений: 9
30.06.2011, 21:31  [ТС] 4
надо обратно в файл..только я не поняла,мне еще один создавать или не надо...
0
0 / 0 / 0
Регистрация: 14.05.2013
Сообщений: 8
28.12.2013, 01:54 5
прокоментируйте пожааалуйстаа каждую строку если не тяжело
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.12.2013, 01:54

Дан текстовый файл. Найти среднее арифметическое положительных чисел в файле
Дан текстовый файл, содержащий целые числа. Найти среднее арифметическое положительных чисел в...

Дан текстовый файл. Найти количество чисел в файле
4)дан текстовый файл,содержащий целые числа.найти количество чисел в файле.

Дан текстовый файл, состоящий из последовательности целых чисел. Определить количество чисел кратных 3.
Дан текстовый файл состоящий из последовательности целых чисел определить кол-во чисел кратно 3

Дан массив из n целых чисел.Определить количество положительных чисел, используя функцию определения положительности числа.
Плиз срочна нуна !!!


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru