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

Как записать текстовой и бинарный файл? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Преобразование матрицы http://www.cyberforum.ru/cpp-beginners/thread1093575.html
Всем доброго приятного вечера!! Не могу написать программу на такую вот(см.на рис.) задачу, если мне не решить до завтра мне капец светит лето по ходу помогите прошу!! добрые люди
C++ Для функции трёх переменных определить фиктивные и существенные переменные. Вывести на экран таблицу истинности Для функции трёх переменных определить фиктивные и существенные переменные. Вывести на экран таблицу истинности только для существенных переменных. http://www.cyberforum.ru/cpp-beginners/thread1093564.html
C++ Где скачать Embarcadero Rad Studio
Не нравится глючная среда M$ VS, Все долго и тупо. Еще когда я занимался Delphi кодил на delphi 7, знакомый (С++) во всю использовал Borland C++ Builder Так вот Borland C++ Builder намного лучше MS VS
C++ Сократить дробь
Смысл задачи в том, что когда ввожу например дробь 3/9 в результате мне должно вывести не скоротную дробь, то бишь 1/3
C++ Не компилируется пример пример! http://www.cyberforum.ru/cpp-beginners/thread1093535.html
Добрый день, я только-только решил начать изучать програмирование на С++! Как учебное пособие использую книгу Стефана Р. Девитса "С++ для чайников" Перешел к изученю масивов, до этого все примеры у меня работали! Суть в этом: В представленной ниже программе осуществляеться ввод последовательностей целых чисел (до первого отрицательного числа), затем эта последовательность и сумма ее...
C++ В массиве определить наибольшие из первых десяти элементов и последних десяти элементов и поменять их местами В массиве A из 20 элементов определить наибольшие из первых десяти элементов и последних десяти элементов и поменять их местами. Элементы массива A должны быть случайными числами в диапазоне от 0 до 100. подробнее

Показать сообщение отдельно
Polls
0 / 0 / 0
Регистрация: 09.02.2014
Сообщений: 15
10.02.2014, 18:57     Как записать текстовой и бинарный файл?
Имеются сведения по странам : название страны и данные о добыче нефти за каждый год из последних 5-ти лет. Найти:
№1. для каждой страны год и среднию арифмет. добычу за год
№2.вывести список стран с непрерывным увелечением добычи нефти в течение 5 лет и страну с максимальным добычей в год нефти за 5 лет

результат обработки вывести на экран в виде таблицы. Организовать сортировку таблицы по колонке, номер которой должен вводиться с клавиатуры.Записать исходные данные на диск в виде текстовых и двоичных файлов

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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include<stdio.h>
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<io.h>
int N_Max(int*A,int N){
int i,k=0;
for(i=1;i<N;i++)if(A[k]<A[i])k=i;
return k; }
 
float SR_Mas(int* A,int N){
float S=0;
for(int i=0;i<N;i++)S+=A[i];
if(N)S/=N;
return S; }
 
 
void Str_RND(char* s,int M){
char St[]="ABCDEFGHIKLMNOP";
int j,k,L=strlen(st);
k=rand()%M;
for(j=o;j<2+k;j++)s[j]=st[rand()%L];
s[j]='/0'; }
 
struct Zap{ char Strana[10];
int Dob[5];
float SRED;
int Max;
int Nom;
};
 
void lnput_RND(Zap* Mas,int n);
void Print_table(FILE*ft,Zap* Mas,int kol);
void Action (Zap*Mas,int kol);
int Save(Zap*Mas,int kol);
void Write_bin(FILE*f,Zap*Mas,int kol);
void Print_Spisok(FILE*ft,Zap*Mas,int kol);
 
void main() {int N,p,i; clrscr();
Zap *St;
char NF[15]; FILE*ft;
do{
cout<<"\n Input kol-vo zapisei:";cin>>N;
St=new Zap[N];
input_RND(St,N);
Print_table(stdout,St,N);
Print_table(stdout,St,N);
Action(St,N);
Print_table(stdout,St,N);
Save(St,N);}
while(N==0);}
 
void input_RND(Zap*Mas,int n){
Zap z;
int i,j;
srand(1);
for(i=0;i<n;i++){Str_RND(z.Strana,8);
for(j=0;i<5;i++)z.Dob[j]=1+rand()%1000;
z.SRED=0;z.Max=0;z.Nom=0;
Mas[i]=z;}}
 
void Print_table(FILE*ft,Zap*Mas,int kol);
 
{ int i,j;
if(ft==stdout)clrscr();else cout <<"/n File txt ready!";
fprintf(ft,"\n _____ 1 ______2_____3______4______5______6_____7______8_____9___");
fprintf(ft,"\n Strana C1 C2 C3 C4 C5 Sred MAX Nom ");
fprintf(ft,"\n ____________________________________________________________ ____");
for(i=0;i<kol;i++){fprintf(ft,"\n %2d)%10s",i+1, Mas[j].Strana);
for (j=0;j<5;j++) fprintf(ft," %5d",Mas[i].Dob[j]);
if(Mas[i].Nom>0)fprintf(ft," %8d %2f %6d %4d",Mas[j].S,
Mas[i].SRED, Mas[i].Max[i].Nom);}
fprintf(ft,"\n ____________________________________________________________ _____");}
 
void Action(Zap* Mas,int kol){ int i,j;
for(i=0;i<kol;i++){
j=N_Max(Mas[i].Dod,5);
Mas[i].Nom=j+1;
Mas[i].Max=Mas[i].Dob[j];
Mas[i],SRED=SR_Mas(Mas[i].Dob,5); }}
 
int Save(Zap* Mas, int kol){
FILE* ft; int L;char NF[15];
cout<<"\n Save in File: 1 - txt, 2 - bin ? (0 - No): ";cin>>L;
if(L>0){cout<<"\n Input File Name: ";cin>>NF;}
switch(L){
case 1:ft=fopen(NF,"wt"); Print_table(ft,Mas,kol);fclose(ft);break;
case 2:ft=fopen(NF,"wb"); Write_bin(ft,Mas,kol); fclose(ft); }
return L; }
 
void Write_bin(FILE* f, Zap* Mas, int kol){ 
for(int i=0;i<kol;i++)fwrite(Mas+i,sizeof(Zap),1,f);
cout<<"\n File *.bin is ready! "; getch();}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru