var n : 0..1000; begin repeat write ('Введите натуральное число, меньшее 1000: '); readln (n); until n in [1..999];
if n in [100..999] then write (ch_3[n div 100], ' '); if (n mod 100) in [20..99] then begin write (ch_2[(n mod 100)div 10], ' '); if (n mod 10) <> 0 then write (ch_1[n mod 10]); end else if (n mod 100) <>0 then write (ch_1[n mod 100]);
#include <stdio.h>
#include <windows.h>
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
int const n=3;
int mas[n][n];
int sum1, sum2;
bool magik;
for (int i=0; i<n; i++)
for (int j=0; j<n; j++)
{
printf("mas[%d][%d] = ", i+1, j+1);
scanf("%d",&mas[ i ][ j ]);
}
printf("\nВведенная матрица:\n");
for (int i=0; i<n; i++)
{
for (int j=0; j<n; j++)
{
printf("%d ",mas[ i ][ j ]);
}
printf("\n");
}
sum1=0;
sum2=0;
for (int i = 0; i<n; i++)
{
sum1 += mas[ i ][ i ];
sum2 += mas[ i ][ n-1-i ];
}
printf("Сумма главной диагонали = %d\n", sum1);
printf("Сумма побочной диагонали = %d\n", sum2);
magik = true;
for (int i=0; i<n; i++)
{
if (sum1==sum2)
{
sum2=0;
for (int j=0; j<n; j++)
{
sum2 += mas[ i ][ j ];
}
} else { magik=false; break; }
}
if (magik==true)
{
for (int i=0; i<n; i++)
{
if (sum1==sum2)
{
sum2=0;
for (int j=0; j<n; j++)
{
sum2 += mas[ j ][ i ];
}
}
else { magik=false; break; }
}
}
if (magik==true)
printf("\nМатрица является магическим квадратом\n");
else
printf("\nМатрица не является магическим квадратом\n");
system("pause");
return 0;
}
const
ch_1: array[1..19] of string = ('один', 'два', 'три', 'четыре', 'пять', 'шесть','семь', 'восемь', 'девять', 'десять', 'одиннадцать', 'двенадцать', 'тринадцать','четырнадцать', 'пятнадцать', 'шестнадцать', 'семнадцать', 'восемнадцать', 'девятнадцать');
ch_2: array [2..9] of string = ('двадцать', 'тридцать', 'сорок', 'пятьдесят', 'шестьдесят', 'семьдесят', 'восемьдесят', 'девяносто');
ch_3: array [1..9] of string = ('сто', 'двести', 'триста', 'четыреста', 'пятьсот', 'шестьсот', 'семьсот', 'восемьсот', 'девятьсот');
var
n : 0..1000;
begin
repeat
write ('Введите натуральное число, меньшее 1000: ');
readln (n);
until n in [1..999];
if n in [100..999] then write (ch_3[n div 100], ' ');
if (n mod 100) in [20..99] then
begin
write (ch_2[(n mod 100)div 10], ' ');
if (n mod 10) <> 0 then write (ch_1[n mod 10]);
end
else
if (n mod 100) <>0 then write (ch_1[n mod 100]);
end.