sa se determine prima/ultima poziție a unui număr prim/perfect/palindrom din vector
Răspunsuri la întrebare
Răspuns de
0
#include <iostream>
using namespace std;
int main(){ int n,i,a[101]; cin>>n; for(i=1; i<=n; i++) { cin>>a[i]; } // numar prim int d,ok=1,ppoz=0,upoz=0; for(i=1; (i<=n) && (ppoz==0); i++) { ok=1; for(d=2; (d*d<=a[i]) && (ok==1); d++) if(a[i]%d==0) ok=0; if(ok==1) ppoz=i; } for(i=n; (i>=ppoz)&&(upoz==0); i--) { ok=1; for(d=2; (d*d<=a[i])&&(ok==1); d++) if(a[i]%d==0) ok=0; if(ok==1) upoz=i; } cout <<ppoz<<" "<<upoz<< endl;
// numar perfect int s,perfect_ppoz=0, perfect_upoz=0; for(i=1; (i<=n) && (perfect_ppoz==0); i++) { s=1; for(d=2; d<=a[i]/2; d++) if(a[i]%d==0) s=s+d; if(a[i]==s) perfect_ppoz=i; } for(i=n; (i>= perfect_ppoz)&&(perfect_upoz==0); i--) { s=1; for(d=2; d<=a[i]/2; d++) if(a[i]%d==0) s=s+d; if(a[i]==s) perfect_upoz=i; } cout <<perfect_ppoz<<" "<<perfect_upoz<< endl;
// palindrom int pp=0,up=0,copie, inv; for(i=1; (i<=n) && (pp==0); i++) { copie=a[i]; inv=0; while(copie>0) { inv=copie%10+inv*10; copie=copie/10; } if(a[i]==inv) pp=i; } for(i=n; (i>= pp)&&(up==0); i--) { copie=a[i]; inv=0; while(copie>0) { inv=copie%10+inv*10; copie=copie/10; } if(a[i]==inv) up=i; } cout <<pp<<" "<<up<< endl; return 0;}
using namespace std;
int main(){ int n,i,a[101]; cin>>n; for(i=1; i<=n; i++) { cin>>a[i]; } // numar prim int d,ok=1,ppoz=0,upoz=0; for(i=1; (i<=n) && (ppoz==0); i++) { ok=1; for(d=2; (d*d<=a[i]) && (ok==1); d++) if(a[i]%d==0) ok=0; if(ok==1) ppoz=i; } for(i=n; (i>=ppoz)&&(upoz==0); i--) { ok=1; for(d=2; (d*d<=a[i])&&(ok==1); d++) if(a[i]%d==0) ok=0; if(ok==1) upoz=i; } cout <<ppoz<<" "<<upoz<< endl;
// numar perfect int s,perfect_ppoz=0, perfect_upoz=0; for(i=1; (i<=n) && (perfect_ppoz==0); i++) { s=1; for(d=2; d<=a[i]/2; d++) if(a[i]%d==0) s=s+d; if(a[i]==s) perfect_ppoz=i; } for(i=n; (i>= perfect_ppoz)&&(perfect_upoz==0); i--) { s=1; for(d=2; d<=a[i]/2; d++) if(a[i]%d==0) s=s+d; if(a[i]==s) perfect_upoz=i; } cout <<perfect_ppoz<<" "<<perfect_upoz<< endl;
// palindrom int pp=0,up=0,copie, inv; for(i=1; (i<=n) && (pp==0); i++) { copie=a[i]; inv=0; while(copie>0) { inv=copie%10+inv*10; copie=copie/10; } if(a[i]==inv) pp=i; } for(i=n; (i>= pp)&&(up==0); i--) { copie=a[i]; inv=0; while(copie>0) { inv=copie%10+inv*10; copie=copie/10; } if(a[i]==inv) up=i; } cout <<pp<<" "<<up<< endl; return 0;}
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Istorie,
9 ani în urmă
Matematică,
9 ani în urmă
Chimie,
9 ani în urmă