Informatică, întrebare adresată de bboysm3k3r, 9 ani în urmă

Heeelp, am teza la informatica!
Fisierul a1.in contine in fiecare rind cite un cuvintz cu lungimea mai mic egal decit 255. De scris in fisierul a2.out cuvintele care contin doar vocale si de afisat la ecran cuvintele care incep cu litera mare. Heeelp!!

Răspunsuri la întrebare

Răspuns de blindseeker90
0
#include <iostream>
#include <cstring>
#include <fstream>
using namespace std;

ifstream fia("a2.in");
ofstream foa("a2.out");
//daca output este 0,atunci afiseaza pe ecran
//altfel, afiseaza in fisierul a2.out
void afiseaza_rand(char prop[],int output){
int i;
for(i=0;i<strlen(prop);i++){
if(output==0){
cout<<prop[i];
}
else{
foa<<prop[i];
}
}
if(output==0){
cout<<endl;
}
else{
foa<<endl;
}

}

//functie care returneaza 0 daca exista nonvocale in sir, 1 daca exista doar vocale
int verifica_vocale(char prop[]){
int i,ok=1;
for(i=0;i<strlen(prop);i++){
//daca acel caracter nu este in sirul dat, atunci este nul
if(strchr("aeiouAEIOU",prop[i])==NULL){
ok=0;
break;
}
}
return ok;
}
int main(){
ifstream fia("a2.in");
ofstream foa("a2.out");
char prop[256];
//cat timp citim linii din fisier
while(fia.getline(prop,255)){
//daca primul caracter este mare
if(isupper(prop[0])){
afiseaza_rand(prop,0);
}
//daca este doar cu vocale
if(verifica_vocale(prop)==1){
afiseaza_rand(prop,1);
}
}
return 0;
}
Alte întrebări interesante