#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int area(int alt, int larg){
return alt*larg;
}
void girar(char *output_file, int altura, int largura){
ofstream out(output_file, ios::app);
out<<"Altura:"<<largura<<" Largura:"<<altura<<endl;
out.close();
}
void imprimirRectangulo(int alt, int larg){
int x=larg, x2=larg, x3=larg;
int y=alt;
cout<<"+";
while(x>0)
{ cout<<"--";
x--;
}
cout<<"+"<<endl;
while(y>0)
{ cout<<"|";
while(x2>0)
{ cout<<" ";
x2--;
}
cout<<"|"<<endl;
x2=larg;
y--;
}
cout<<"+";
while(x3>0)
{ cout<<"--";
x3--;
}
cout<<"+"<<endl<<endl;
}
main(int argc, char* argv[]){
int alt, larg;
int res;
int a, b;
char *out_path=argv[2];
string linha, sublinha1, sublinha2;
ifstream in(argv[1]);
while(getline(in, linha, '\n')){
int i=0;
while(i!=2)
{
switch(i)
{ case 0: a=linha.find(":");
b=linha.find(" ");
sublinha1=linha.substr(a+1,b-a);
alt=atoi(sublinha1.c_str());
i++; break;
case 1: a=linha.find("largura:");
sublinha2=linha.substr(a+8, linha.length()-a);
larg=atoi(sublinha2.c_str());
i++;
}
}
res=area(alt, larg);
girar(out_path, alt, larg);
if(alt<10 &&larg<10)
imprimirRectangulo(alt, larg);
else
cout<<"Altura= "<<alt<<", Largura= "<<larg<<" -> Area = "<<res<<endl<<endl;
}
in.close();
}
try to get rid of all that white space and use code /code tags please :) it makes it easier to read
Last edited on