Предмет: Информатика,
автор: Mejora
=============================================================================
Приложения:
![](https://files.topotvet.com/i/c93/c9318c43318ced3ee8878cff819ce517.png)
Ответы
Автор ответа:
0
// PascalABC.NET 3.2, сборка 1377 от 19.01.2017
// Внимание! Если программа не работает, обновите версию!
begin
var n:integer;
repeat
n:=ReadInteger;
if n>0 then begin
var d:=false; // нужны цифры
var a:=false; // нужны буквы
repeat
var r:=n mod 16;
if r in [0..9] then d:=true
else a:=true;
n:=n div 16
until (d and a) or (n=0);
if a and d then Writeln(3)
else
if a then Writeln(1)
else Writeln(2);
n:=-1 // чтобы из цикла не выйти
end
until n=0
end.
Пример
13
1
15
1
9
2
27
3
0
// Внимание! Если программа не работает, обновите версию!
begin
var n:integer;
repeat
n:=ReadInteger;
if n>0 then begin
var d:=false; // нужны цифры
var a:=false; // нужны буквы
repeat
var r:=n mod 16;
if r in [0..9] then d:=true
else a:=true;
n:=n div 16
until (d and a) or (n=0);
if a and d then Writeln(3)
else
if a then Writeln(1)
else Writeln(2);
n:=-1 // чтобы из цикла не выйти
end
until n=0
end.
Пример
13
1
15
1
9
2
27
3
0
Автор ответа:
0
#include <iostream>
using namespace std;
int main() {
int n = -1;
while(!n) {
int numbers = 0, letters = 0;
cin >> n;
for(; !n || (numbers && letters); n/=16) {
if(n%16 < 10) numbers = 1;
else letters = 1;
}
if(numbers&&letters) cout << 3 << endl;
else if(numbers) cout << 1 << endl;
else if(letters) cout << 2 << endl;
}
}
using namespace std;
int main() {
int n = -1;
while(!n) {
int numbers = 0, letters = 0;
cin >> n;
for(; !n || (numbers && letters); n/=16) {
if(n%16 < 10) numbers = 1;
else letters = 1;
}
if(numbers&&letters) cout << 3 << endl;
else if(numbers) cout << 1 << endl;
else if(letters) cout << 2 << endl;
}
}
Похожие вопросы
Предмет: Информатика,
автор: kristinaleontieva88
Предмет: Математика,
автор: olzhabaevaroza1974
Предмет: История,
автор: Аноним
Предмет: Математика,
автор: Колян11111
Предмет: Алгебра,
автор: manokhinapolya