Инфа о сайте
Сайты
Форум
KamPol-LUG
Проект
Гостевая
Club music
Баллы
Баннеры
Радио

()                                                   

 

  • Страница 1 из 1
  • 1
Архив - только для чтения
Наш продвинутый форум » Программирование » Работа с заданиями олимпиад по информатике » "Кодовый замок" Для 9-11 классов. Очень простое
"Кодовый замок" Для 9-11 классов. Очень простое
prepodДата: Вторник, 26.10.2010, 21:46 | Сообщение # 1
Преподаватель ОИВТ
Группа: Администраторы
Сообщений: 309
Статус: Выкл...
Входной замок работает следующим образом:
- если введено натуральное число, которое меньше 100 или больше 1000 - то выводится сообщение "Недопустимое значение"
- если у введенного числа все цифры различны или их сумма равна 13 - то сообщение "Добро пожаловать"
- во всех остальных случаях - сообщение "Закрыто"
Входные данные: натуральное число N (1<=N<=10000)
Выходные данные: необходимо вывести на экран соответствующую надпись

Пояснение
Задание очень простое. Необходимо просто правильно применить условный оператор. Решение можно привести на любом языке. Желательно - на Pascal или PHP


Я в джаббере - mukasov@gmail.com
 
insaneowlДата: Пятница, 29.10.2010, 15:27 | Сообщение # 2
Сержант
Группа: Проверенные
Сообщений: 34
Статус: Выкл...
Code
<html>
<head>
<meta charset=utf-8>
<title></title>
</head>
<body>
<center>
<form action = kod.php method = post>
<table border=1><tr><td><input type=text name=vvod></td><td>
<?php $kod = $_POST ['vvod'];
settype($kod,integer);
if ($kod !== 13) {echo "ВХОД ЗАПРЕЩЕН";}
if ($kod == 13) {echo "ВХОД РАЗРЕШЕН :)";}
?>
</td></tr>
<?php if ($kod < 100) {echo "НЕДОПУСТИМОЕ ЗНАЧЕНИЕ";}
if ($kod > 1000) {echo "НЕДОПУСТИМОЕ ЗНАЧЕНИЕ";}
if ($kod == 13 && $kod > 100 && $kod < 1000 ) {"";}
if ($kod == 0) {"ВВЕДИТЕ КОД";}
?></table><br>
<input type=submit>
</form>
</center>
</body>
</html>

Вод код , только с недопустмиым значением не получилось. smile


Insane Owl - (Англ. Безумный Филин)
Я в Jabber - insaneowl@gmail.com
Я на Twitter - http://twitter.com/insaneowl
 
heliosДата: Вторник, 02.11.2010, 19:10 | Сообщение # 3
Рядовой
Группа: Друзья
Сообщений: 3
Статус: Выкл...
insaneowl, в современных версиях браузеров "meta charset=utf-8" не значит ничего. Посмотри, как на других сайтах это делается.
Code
if ($kod !== 13) {echo "ВХОД ЗАПРЕЩЕН";}   
if ($kod == 13) {echo "ВХОД РАЗРЕШЕН :)";}

Лучше написать как
Code
if ($kod !== 13) {echo "ВХОД ЗАПРЕЩЕН";}   
else {echo "ВХОД РАЗРЕШЕН :)";}

Это и быстрее (для человека и компьютера) и понятнее. Сравнение "$kod !== 13" производится для строк. Это не неправильно, просто медленно и затрудняет восприятие.
Code
settype($kod,integer);

Хорошее решение. Когда это возможно, явно приводите входные данные к нужному виду (хороший уход от инъекций чужого кода).
Code
if ($kod == 13 && $kod > 100 && $kod < 1000 ) {"";}

Вспомнился карикатуристический исходник. Думаю, это можно удалить.

Ну и проверки цифр числа на различность не сделана.

Было бы неплохо, если бы форматировали код (как это делается в исходниках h15.org, например)
"Портянки" неформатированного кода читать сложно.
Сильно помогает функция автоотступа в gedit / notepad++


.
 
Наш продвинутый форум » Программирование » Работа с заданиями олимпиад по информатике » "Кодовый замок" Для 9-11 классов. Очень простое
  • Страница 1 из 1
  • 1
Поиск:

  
Copyright KamPol-LUG © 2024 Хостинг от uCoz