Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <stdio.h>
- #include <stdlib.h>
- #include <fstream>
- #include <iostream>
- #include <string>
- using namespace std;
- typedef struct{
- unsigned int id;
- float cas;
- }Tcasy;
- int main(int argc, char* argv[])
- {
- string N;
- int i,j,k;
- N = argv[4];
- int NE = atoi(N.c_str());
- FILE *f1,*f2;
- Tcasy *sou1,*sou2;
- if(fopen_s(&f1,argv[1],"rb") != 0)
- {
- cout << "Nenacteno 1"<<endl;
- return -1;
- }
- fseek(f1,0,SEEK_END);
- long vel = ftell(f1);
- fseek(f1,0,SEEK_SET);
- sou1 = (Tcasy*)malloc(vel);
- int poc = vel / sizeof(Tcasy);
- fread(sou1,sizeof(Tcasy),poc,f1);
- if(fopen_s(&f2,argv[2],"rb")!= 0)
- {
- cout << "Nenacteno 2"<<endl;
- return -2;
- }
- fseek(f2,0,SEEK_END);
- long vel2 = ftell(f2);
- fseek(f2,0,SEEK_SET);
- sou2 = (Tcasy*)malloc(vel2);
- int poc2 = vel2 / sizeof(Tcasy);
- fread(sou2,sizeof(Tcasy),poc2,f2);
- k = poc-1;
- j = poc2-1;
- Tcasy *vys;
- vys =(Tcasy*) malloc(sizeof(Tcasy) * NE);
- ofstream vystup(argv[3]);
- for(i = 0; i < NE; i++)
- {
- if(sou1[k].cas > sou2[j].cas)
- {
- vys[i] = sou1[k];
- k--;
- }
- else{
- vys[i] = sou2[j];
- j--;
- }
- }
- for(i = NE-1; i >= 0; i--)
- {
- vystup << vys[i].id << " " <<vys[i].cas<<endl;
- }
- fclose(f1);
- fclose(f2);
- free(sou1);
- free(sou2);
- free(vys);
- vystup.close();
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement