|  | *1. Решение задачи с функцией - Слова массива, состоящие из различных букв* |
| | *1. Решение задачи с функцией - Слова массива, состоящие из различных букв*\\ |
| {code:title=razl_bukvi.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
 |  | _\#include <bits/stdc++.h>_ |
| _using namespace std;_ |
| | string Razl(string s) |
| { |
| string w; |
| int d,j; |
| |
 |  | _string Razl(string s)_ |
| \{ |
| | d=s.length(); |
| w=s[0]; |
| for (j=1; j<d; j++) |
| if (w.find(s[j])>d) w+=s[j]; |
| return w; |
| } |
| |
 |  | 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;_ |
| _}_ |
| |
| | 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; |
| } |
| {code} |
| *2. Решение задачи с процедурой* |
| Предложение => массив слов |
 |  | \\ \\ |
| {code:title=predloch-massiv.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
 |  | _\#include <bits/stdc++.h>_ |
| _using namespace std;_ |
| | string s,m[100]; |
| int n; |
| |
 |  | _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=""; |
| } |
| } |
| |
 |  | _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; |
| | int main() |
| { |
| getline(cin,s); |
| Razbit(); |
| for (int i=0; i<n; i++) cout << m[i] << endl; |
| } |
 |  | |
| | {code} |
| *3. Булевая функция, получает в качестве параметра целое x* |
 |  | \\ |
| |
 |  | *Количество простых, кубы которых меньше n* |
| | *Количество простых, кубы которых меньше n*\\ |
| {code:title=kubi<n.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
 |  | \#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; |
| } |
| |
 |  | 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; |
| | string is,s; |
| int n,x,ans; |
| cin >> n; |
| ans=0; |
| for (x=2; x*x*x<n; x++) |
| if (Prime(x)) ans++; |
| cout << ans; |
| } |
 |  | /\* |
| | |
| /* |
| 1001 - 4 |
| 126 - 3 |
| 125 - 2 |
| 10 - 1 |
| 7 - 0 |
 |  | \*/ |
| | */ |
| {code} |
| *4. Возвращение значений параметров из процедуры Split* |
| \\ |
| |
 |  | *4. Возвращение значений параметров из процедуры Split* &x1 - передаём в процедуру адрес переменной x1 |
| | &x1 - передаём в процедуру адрес переменной x1\\ |
| {code:title=split.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
 |  | #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; |
 | | \} |
| | } |
| {code} |
| *5. Три лучших рейтинга (10_BY. Спартакиада)* |
| \\ \\ |
| {code:title=spartakiada.cpp\|borderStyle=solid} |
| #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; |
| } |
| {code} |
| *6. Функция и процедура (2010_BY. Бактериалное родство)* |
| \\ |
| {code:title=bakterrodstvo.cpp\|borderStyle=solid} |
| #include <bits/stdc++.h>using namespace std; |
| |
| string a,b; |
| int n; |
| |
| int Degree() |
| { |
| int i,k; |
| k=0; |
| for (i=0; i<n; i++) |
| if (a[i]==b[i]) k++; |
| return k; |
| } |
| void Shift() |
| { |
| a=a[n-1]+a.substr(0,n-1); |
| } |
| |
| int main() |
| { |
| int i,max,k; |
| freopen("input.txt","r",stdin); |
| freopen("output.txt","w",stdout); |
| cin >> n; |
| cin >> a; |
| cin >> b; |
| max=0; |
| for (i=0; i<n; i++) |
| { |
| k=Degree(); |
| if (k>max) max=k; |
| Shift(); |
| } |
| cout << max; |
| } |
| {code} |