80分,求救
查看原帖
80分,求救
1106396
Cong256楼主2024/3/9 19:23
#include<iostream>
#include<cmath>
using namespace std;
char str[]={'a','e','i','o','u','A','E','I','O','U'};
int main(){
	string a;
	getline(cin,a);
	int len = a.length();
	int sum1=0;
	for(int i=0;i<len;i++){
		if((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A')){
			cout<<'.';
			sum1++;
		}else{
			cout<<a[i];
		}
	}
	cout<<endl;
	int sum=round(sum1/3.0);
	for(int i=0;i<len;i++){
		if(((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A'))&&!(int)sum){
			cout<<'.';
		}else if(((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A'))&&(int)sum){
			cout<<a[i];
			sum--;
		}else{
			cout<<a[i];
		}
	}
	cout<<endl;
	bool flag=false;
	for(int i=sum1;i<len;i++){
		for(int j=0;str[j]!='\0';j++){
			if(a[i]==str[j]){
				flag=true;
			}
		}
	}
	
	if(flag){
		for(int i=0;i<len;i++){
			bool asd=true;
			if(((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A'))&&!(int)sum&&i-1>(int)(sum1/3.0+0.5)){
				for(int j=0;str[j]!='\0'&&asd;j++){
					if(a[i]==str[j]){
						cout<<a[i];
						asd=false;
					}
				}
				if(asd){
					cout<<'.';
				}
			}else if(((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A'))&&(int)sum){
				cout<<a[i];
				sum--;
			}else{
				cout<<a[i];
			}
		}
	}else{
		int sum2=round(sum1/3.0*2);
		for(int i=0;i<len;i++){
			if(((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A'))&&!(int)sum2){
				cout<<'.';
			}else if(((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A'))&&(int)sum2){
				cout<<a[i];
				sum2--;
			}else{
				cout<<a[i];
			}
		}
	}
}
2024/3/9 19:23
加载中...