1. Решение задачи с функцией - Слова массива, состоящие из различных букв
#include <bits/stdc++.h>
using namespace std;
string Razl(string s)
{
string w;
int d,j;
d=s.length();
w=s[0];
for (j=1; jd) w+=s[j];
return w;
}
int main()
{
string s[100];
int n,i;
cin >> n;
for (i=0; i<n; i++) cin >> s[i];
for (i=0; i<n; i++)
if (Razl(s[i])==s[i]) cout << s[i] << endl;
}
2. Решение задачи с процедурой
Предложение => массив слов
#include <bits/stdc++.h>
using namespace std;
string s,m[100];
int n;
void Razbit()
{ string p; int i,d; s+=' '; d=s.length(); n=0; p=""; for (i=0; i<d; i+)if (s[i]!=' ') p=s[i];else {m[n]=p;n++;p="";}}
int main()
{ getline(cin,s);
Razbit();
for (int i=0; i<n; i++) cout << m[i] << endl;
}
3. Булевая функция, получает в качестве параметра целое x
Количество простых, кубы которых меньше n
#include <bits/stdc++.h>
using namespace std;bool Prime(int x)
bool Prime(int x) { for (int i=2; i<x; i++) if ((x%i)==0) return false; return true; }
int main()
{
string is,s;
int n,x,ans;
cin >> n;
ans=0;
for (x=2; x*x*x<n; x++)
if (Prime) ans++;
cout << ans;
}
/*
1001 - 4
126 - 3
125 - 2
10 - 1
7 - 0
*/
4. Возвращение значений параметров из процедуры Split
&x1 - передаём в процедуру адрес переменной x1
#include <bits/stdc++.h>
using namespace std;
void Split(int x, int &x1, int &x2, int &x3)
{
x1=x%10;
x3=x/100;
x2=(x/10) % 10;
}
int main()
{
int i,i1,i2,i3,
j,j1,j2,j3,
n,a2,a3;
cin >> n;
a2=0;
for (i=10; i<100; i++)
for (j=10; j<100; j++)
{
i1=i/10; i2=i%10;
j1=j/10; j2=j%10;
if ((i1+i2==j1+j2) && (abs(i-j)>a2))
a2=abs(i-j);
};
if (n==2) cout << a2;
a3=0;
for (i=100; i<1000; i++)
for (j=100; j<1000; j++)
{
Split(i,i1,i2,i3);
Split(j,j1,j2,j3);
if (((i1+i2+i3)==(j1+j2+j3)) && (abs(i-j)>a3))
a3=abs(i-j);
};
if (n==3) cout << a3;
}
5. Три лучших рейтинга (10_BY. Спартакиада)#include <bits/stdc++.h>
using namespace std;
int r[100000],n;
int nMaxR()
{
int max,i,num;
max=0;
for (i=0; i<n; i++)
if (r[i]>max)
{ max=r[i]; num=i; };
return num;
}
int main()
{
int x,y,z,a,b,c,i,n1,n2,n3;
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
cin >> x >> y >> z;
cin >> n;
for (i=0; i<n; i++)
{
cin >> a >> b >> c;
r[i]=a*x+b*y+c*z;
}
n1=nMaxR(); r[n1]=0;
n2=nMaxR(); r]n2]=0;
n3=nMaxR();
cout << n1+1 << ' ' << n2+1 << ' ' << n3+1;
}