вариант решения, если элементы вводятся var n, i, x, s : integer; t: string; begin writeln('количество чисел'); readln(n); s := 0; for i := 1 to n do begin writeln(i,' число:'); readln(x); if (x > 9) and (x<100)) then begin t := IntToStr(x); if (((t[1] = '3') and (t[2] <> '3')) or (t[1] <> '3') and (t[2] = '3')) then s := s+1; end; end; writeln('ответ ',s) end.
вариант решения, если элементы заданы массивом const n=50 var i, x, s : integer; t: string; m1: array [1..n] of integer; begin s := 0; for i := 1 to n do begin x := m1[i]; if (x > 9) and (x<100)) then begin t := IntToStr(x); if (((t[1] = '3') and (t[2] <> '3')) or (t[1] <> '3') and (t[2] = '3')) then s := s+1; end; end; writeln('ответ ',s) end.
Важное замечание: Для типа long long int требуется от компилятора поддержка стандарта C99.
Приложил файл расширения .cpp, чтобы обойти ограничение сайта. При работе с кодом измените на .c
#include <stdio.h>
long long int NOD(long long int var1, long long int var2) //Алгоритм Евклида
{
while(var1 != var2)
{
if(var1 > var2)
var1 = var1 - var2;
else var2 = var2 - var1;
}
return var1;
}
long long int NOK(long long int var1, long long int var2)
{
return (var1 * var2) / NOD(var1, var2);
}
int main()
{
long long int N, K;
scanf("%lli%lli", &N, &K);
printf("Количество оборотов: %lli\n", NOK(N, K));
}
var
n, i, x, s : integer;
t: string;
begin
writeln('количество чисел');
readln(n);
s := 0;
for i := 1 to n do
begin
writeln(i,' число:');
readln(x);
if (x > 9) and (x<100)) then
begin
t := IntToStr(x);
if (((t[1] = '3') and (t[2] <> '3')) or (t[1] <> '3') and (t[2] = '3')) then s := s+1;
end;
end;
writeln('ответ ',s)
end.
вариант решения, если элементы заданы массивом
const
n=50
var
i, x, s : integer;
t: string;
m1: array [1..n] of integer;
begin
s := 0;
for i := 1 to n do
begin
x := m1[i];
if (x > 9) and (x<100)) then
begin
t := IntToStr(x);
if (((t[1] = '3') and (t[2] <> '3')) or (t[1] <> '3') and (t[2] = '3')) then s := s+1;
end;
end;
writeln('ответ ',s)
end.