1. если слово из 2-х букв
var a,b:char;
begin
readln(a,b);
writeln(a,b);
writeln(b,a);
writeln(a,a);
writeln(b,b);
end.
2, если не из двух букв
тут сначала вводится n - максимальная длина слова, а уже потом 2 буквы
var a,b:char;
n:integer;
procedure gen(i:integer;s:string);
begin
if i>n then exit;
if i<>0 then writeln(s);
gen(i+1,s+a);
gen(i+1,s+b);
end;
begin
readln(n);
readln(a,b);
gen(0,'');
end.
#include <iostream>
using namespace std;
typedef unsigned short int USI;
int main() {
/* инициализация */
USI n;
cout << "Количество учеников: ";
cin >> n;
USI a[n], g[n], f[n];
/* заполнение массивов */
size_t i;
for(i = 0; i < n; i++) {
cout << "Оценки ученика "
<< (i+1) << ":\n\n";
cout << "Алгебра: ";
cin >> a[i];
cout << "Геометрия: ";
cin >> g[i];
cout << "Физика: ";
cin >> f[i];
cout << "\n-----\n\n";
}
cout << "\n-----\nРЕЗУЛЬТАТЫ\n-----\n\n";
/* Средняя оценка по алгебре */
USI sum = 0;
for(i = 0; i < n; i++) {
sum += a[i];
}
cout << "Средняя оценка по алгебре: "
<< (sum/n) << '\n';
/* Количество учеников без двоек */
USI notwo = 0;
for(i = 0; i < n; i++) {
if ( (a[i] <= 2)
|| (g[i] <= 2)
|| (f[i] <= 2)
) {
continue;
}
else {
notwo++;
}
}
cout << "Учеников без двоек: "
<< notwo << '\n';
return 0;
}
<span>1) 2*1024*1024*1024/900 = 2386092 файлов</span>
N = int(input())
i=1
degree=0
while i < n:
i *= 2
degree += 1
print(degree, '2 ^', degree)