Форум программистов, компьютерный форум, киберфорум
Наши страницы

Сортировка массива и запись в файл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Одномерный массив http://www.cyberforum.ru/cpp-beginners/thread214026.html
Помогите решить лабораторную на тему одномерных массивов. Вот задание http://f04.spaces.ru/f/506463539434/1292680881/11756507/0/174ef35968ebe6c4bb4733ee672c5e61/Spp_zadachi.JPG
C++ Помогите пожалуйста с массивом Помогите решить лабораторную на тему одномерных массивов. Вот задание http://f04.spaces.ru/f/506463539434/1292680881/11756507/0/174ef35968ebe6c4bb4733ee672c5e61/Spp_zadachi.JPG http://www.cyberforum.ru/cpp-beginners/thread214025.html
C++ Компилятор
Привет Всем, если пишу не в той теме, сильно не бейте)) Вопрос такой, помню в школе запускали компилятор(Borland C, вроде так назывался) до загрузки ОС, не могли бы вы рассказать, как его так же...
дерево поиска Т1 для дерева Т C++
Здравствуйте! Пишу курсовой с вот таким задание: 1. Создать идеально сбалансированное дерево Т, распечатать его (в виде дерева), 2 .определить максимальную глубину дерева, 3.определить есть...
C++ Найти слова, которые начинаются на заданную букву http://www.cyberforum.ru/cpp-beginners/thread213989.html
дана задача. найти слова, которые начинаются на заданную букву. мне нужна функция которая находит эти слова
C++ Создать конструктор Используя следующий фрагмент, создайте е конструктор саг(). Он должeн передавать необходимые аргументы объектам класса vehicle. Кроме этого конструктор саг() должен при создании объекта... подробнее

Показать сообщение отдельно
Anastasiya_1692
1 / 1 / 1
Регистрация: 30.12.2009
Сообщений: 53

Сортировка массива и запись в файл - C++

18.12.2010, 17:14. Просмотров 656. Ответов 0
Метки (Все метки)

Доброго времени суток!

Задание:
Файл содержит вещественные числа. Записать все положительные числа в порядке возрастания в файл positive.txt, а отрицательные числа в порядке убывания в файл negative.txt.

Проблема с сортировкой элементов. Не понимаю в чем дело:

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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main(int argc, char* argv[])
{double otr[10],pol[10],ch;
int kol=0,i=0,j=0,kol_otr=0,kol_pol=0;
FILE *ishf;
printf ("Neobhodimo vvesti ishodnie chisla\n");
printf ("Vvedite koli4estvo chisel: ");
scanf ("%d", &kol);
ishf=fopen ("ishodn.txt","w");
 for ( i=0;i<kol;i++){
  scanf("%lf", &ch);
  fprintf(ishf,"%lf\n",ch);
  }
i=0;  
if (fclose(ishf)==0) printf ("Bil sozdan file ishodn.txt\n");
ishf=fopen ("ishodn.txt","r");
while (!feof(ishf)){
 fscanf(ishf, "%lf\n", &ch);
  if (ch>0){
   pol[i]=ch;
   i++;
   kol_pol++;
  }
  if (ch<0){
   otr[j]=ch;
   j++;
   kol_otr++;
  }
}  
for (i=0;i<kol_pol-1;i++)
 for (j=1;j<kol_pol;j++)
   if (pol[i]>pol[j]){
   ch=pol[i];
   pol[i]=pol[j];
   pol[j]=ch;
   }
 
for (i=0;i<kol_otr-1;i++)
 for (j=1;j<kol_otr;j++)
   if (otr[i]<otr[j]){
   ch=otr[i];
   otr[i]=otr[j];
   otr[j]=ch;
   }
 
fclose(ishf);
FILE *polf;
polf=fopen ("positive.txt","w");
printf ("Polozhitel'nie chisla:\n");
 for ( i=0;i<kol_pol;i++){
   fprintf(polf,"%lf\n",pol[i]);
   printf ("Chislo %lf bilo zapisano v fail positive.txt\n", pol[i]);
 }
fclose(polf);
FILE *otrf;
printf ("Oritsatel'nie chisla:\n");
otrf=fopen ("negative.txt","w");
 for ( i=0;i<kol_otr;i++){
   fprintf(otrf,"%lf\n",otr[i]);
   printf ("Chislo %lf bilo zapisano v fail negative.txt\n", otr[i]);
 }  
fclose(otrf);
 getch();
 
        return 0;
}
Помогите, пожалуйста, найти ошибку и, если можно объясните, что было не так. Заранее всем спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru