Дан код:
unsigned int i;
for (i = 100; i >= 0; --i)
printf("%dn", i);
В коде есть две ошибки.
Первая заключается в том, что используется тип unsigned int
, который работает только со значениями, большими или равными нулю. Поэтому условие цикла for
всегда будет истинно, и цикл будет выполняться бесконечно.
Корректный код, выводящий значения всех чисел от 100 до 1, должен использовать условие i > 0
. Если нам на самом деле нужно вывести нулевое значение, то следует добавить дополнительный оператор printf
после цикла for
.
unsigned int i;
for (i = 100; i > 0; --i)
printf("%dn", i);
printf("%dn", i);
Вторая ошибка — вместо %d
следует использовать %u
, поскольку мы выводим целые значения без знака.
unsigned int i;
for (i = 100; i > 0; --i)
printf("%un", i);
Теперь этот код правильно выведет список чисел от 100 до 1, в убывающем порядке.
Разбор взят из книги Гейл Л. Макдауэлл «Cracking the Coding Interview» (есть в переводе).
0 / 0 / 0 Регистрация: 03.05.2023 Сообщений: 12 |
|
1 |
|
Найти ошибку в коде04.05.2023, 17:17. Показов 274. Ответов 4
Помогите, пожалуйста, найти ошибку в коде. Миниатюры
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
04.05.2023, 17:17 |
Ответы с готовыми решениями: Найти ошибку в коде Найти ошибку в коде using System; namespace Less02_task01 Найти ошибку в коде public sealed partial class MainPage :… Найти ошибку в коде Найти ошибку в коде 4 |
Volga_ Модератор 4669 / 2685 / 1440 Регистрация: 14.12.2018 Сообщений: 4,975 Записей в блоге: 1 |
||||
04.05.2023, 17:33 |
2 |
|||
tolik1048003, следующий раз покажите код вместо фото кода, пожалуйста. Добавлено через 6 минут
нечетных элементов Нечетные элементы как вы хотите будут положительными ? Или включаются отрицательными ? Добавлено через 23 секунды
2 |
0 / 0 / 0 Регистрация: 03.05.2023 Сообщений: 12 |
|
04.05.2023, 17:41 [ТС] |
3 |
Хорошо, исправлюсь! Миниатюры
0 |
Модератор 4669 / 2685 / 1440 Регистрация: 14.12.2018 Сообщений: 4,975 Записей в блоге: 1 |
|
04.05.2023, 17:46 |
4 |
Вот, программа некорректно считает сумму нечетных элементов массива. Нет, она уже правильно считает ! Добавлено через 1 минуту
0 |
Модератор 6068 / 3290 / 993 Регистрация: 07.09.2019 Сообщений: 5,214 |
|
04.05.2023, 18:03 |
5 |
Проблема в коде из стартового поста состояла в том, что в качестве условия нечётности было принято равенство остатка 1. А при делении на 2 отрицательного числа остаток равен -1. Поэтому если проверять неравенство остатка нулю, как сделано в верном коде из поста #2, то ошибок не будет.
2 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
04.05.2023, 18:03 |
5 |
Что в цикле foreach будет в $a и $b?
+ В $a будет ключ элемента массива, в $b будет значение элемента массива
— В $a и $b будут ключи массива
— В $a будет значение элемента массива, в $b ключ элемента массива
— Не верная запись foreach
— В $a и $b будут значения массива
Не забывайте, что порой приходится составлять отчёты, например отчёт о прохождении практики юриста, что можно найти на сайте www.Univerest.ru. Специалисты в таком сервисе знаю, что необходимо и составят отчёт максимально быстро по всем правилам и нормам.
Что означает запись: $arr[]=’значение’;
— Запись не допустимая, нужно указать ключ
— Создание массива $arr, с его инициализацией
+ Добавление элемента в конец массива $arr, с присвоением уникального и максимального числового индекса
— Добавление первого элемента массива $arr
Как преобразовать значение переменной в целое число?
— floatval
— unset
— is_int
+ intval
С помощью какого цикла, можно выполнить обход массива?
а) for
б) foreach
в) while
— Только б
+ Любого
— Только в
— а и в
— а и б
— Только а
— б и в
Какие типы значения может вернуть функция инструкцией return?
+ resource
+ boolean
+ array
+ string
+ integer
+ object
+ double
Какой оператор создан специально только для обхода массива?
— for
— in_array
— is_array
— array_bypassing
+ foreach
— while
В каком варианте правильно объявляется массив?
а) $arr=array();
б) $arr=’1′.’2′;
в) $arr=array(‘1′,’2’);
г) $arr=NULL;
— Только а
— Только б
— Только в
— Только г
+ Только а и в
— Только б и в
— Только а и б
Какая конструкция может использоваться для вывода текста?
а) echo
б) print
в) printf
г) vsecho
д) htmlspecialchars
е) chars
— а
+ а, б, в
— а, г
— д
— б, в
— е
— в
Какая конструкция позволяет включить файл только один раз, вне зависимости от количества вызовов?
а) include(‘index.php’);
б) include_once(‘index.php’);
в) require(‘index.php’);
г) require_once(‘index.php’);
— Только а и б
— Только б
— Только в и г
— Только в
— Только а и в
— Только г
— Только а
+ Только б и г
Какой из операторов является условным?
— foreach
+ if
— for
— while
Есть код:
Что у нас будет выведено в результате работы кода?
+ 15
— 510
— 5
— 10
Какой максимальный уровень вложенности многомерных массивов?
— 100
+ Теоретически не ограничен
— 10
— В PHP нет многомерных массивов
Есть код:
Что будет выведено в результате работы кода.
+ 510
— 10
— 5
— 15
Какое из условий будет истинно, если хотя бы одна из переменных true?
а) if($flag1 || $flag2) {};
б) if($flag1 && $flag2) {};
в) if($flag1 and $flag2) {};
г) if($flag1 or $flag2) {};
— Только в
— а и б
— б и г
— б и в
— Только а
— Только г
+ а и г
— Только б
Что будет выведено в результате работы кода?
— «Истина» и «Ложь»
+ «Истина»
— Ничего не будет выведено
— «Ложь»
С помощью какой конструкции можно подключить файл в php?
а) include
б) include_once
в) include_php
г) include_file
д) require
ж) require_once
+ а, б, д, ж
— только а
— а, б, в, г
— только д
— всех
— только в
С помощью какой инструкции функция может вернуть значение?
— input
— output
+ return
— exit
Найдите ошибку в данном коде:
— Нельзя использовать пустые кавычки {}, без оператора внутри
— Нельзя использовать больше 1 elseif
— Внутри if, elseif, else нет корректного условия
— Не допустима запись elseif($flag2) echo $flag2; без {}
+ У else не может быть условия
В каком случае в функции можно изменять значения переменной, заданное вне функции:
а) Используя массив $GLOBALS
б) Используя ключевое слово global
в) Передавая параметры функции по ссылке
— Ни один вариант не верный
— б
+ В любом варианте
— в
— а
В каком случае на экран будет выведен текст «Версия Битрикс 12»?
+ Только б
— В обоих
— Ни в одном
— Только а
Что означает такое объявление функции:
function get_sum($left=10, $right=5)
— Функция работает, только если ей переданы параметры get_sum(10, 5)
— Функция не принимает значения и инициализирует сразу две переменные
+ Функция имеет необязательные параметры и объявлены значения по умолчанию
— Не корректная форма записи
Как вывести на экран определенную ниже константу:
— echo $number;
— echo $NUMBER;
— echo $$number;
+ echo NUMBER;
Имеем массив:
Как нам напрямую обратиться к элементу со значением «Don» и заменить значение его на «Volgo-Don»?
— $ship[«Cargo ships»]=»Volgo-Don»
— $ship[«Cargo ships»][2]=»Volgo-Don»
— «$ship = array( «»Cargo ships»» => array(«»Volgo-Don»»), );»
— $ship[«Cargo ships»][«Don»]=»Volgo-Don»
+ $ship[«Cargo ships»][1]=»Volgo-Don»
Что будет результатом работы кода:
— 4
+ 3
— 3,4
— 3,5
— 3.0
С помощью какой функции можно проверить, является ли переменная массивом?
а) in_array
б) is_array
в) isset
г) array_search
— Только в и г
— Только г
— Только а и г
— Только б и в
— Только а
— Только в
— Только а и б
+ Только б
Какой код нужно использовать, если нам нужно вывести сообщение хотя бы один раз?
— Любой
— Только в
— б и в
— а и в
+ Только б
— Только а
— а и б
Требуется ли в PHP в обязательном порядке объявлять тип переменной?
+ нет
— да
Создайте рассылку в конструкторе за 15 минут. Отправляйте до 1500 писем в месяц бесплатно.
Ошибка 404, либо Error 404 Not Found появляется, если браузеру не удалось обнаружить на сервере указанный URL.
Дан код:
unsigned int i;
for (i = 100; i >= 0; --i)
printf("%dn", i);
В коде есть две ошибки.
Первая заключается в том, что используется тип unsigned int
, который работает только со значениями, большими или равными нулю. Поэтому условие цикла for
всегда будет истинно, и цикл будет выполняться бесконечно.
Корректный код, выводящий значения всех чисел от 100 до 1, должен использовать условие i > 0
. Если нам на самом деле нужно вывести нулевое значение, то следует добавить дополнительный оператор printf
после цикла for
.
unsigned int i;
for (i = 100; i > 0; --i)
printf("%dn", i);
printf("%dn", i);
Вторая ошибка — вместо %d
следует использовать %u
, поскольку мы выводим целые значения без знака.
unsigned int i;
for (i = 100; i > 0; --i)
printf("%un", i);
Теперь этот код правильно выведет список чисел от 100 до 1, в убывающем порядке.
Разбор взят из книги Гейл Л. Макдауэлл «Cracking the Coding Interview» (есть в переводе).
0 / 0 / 0 Регистрация: 03.05.2023 Сообщений: 12 |
|
1 |
|
Найти ошибку в коде04.05.2023, 17:17. Показов 274. Ответов 4
Помогите, пожалуйста, найти ошибку в коде. Миниатюры
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
04.05.2023, 17:17 |
Ответы с готовыми решениями: Найти ошибку в коде Найти ошибку в коде using System; namespace Less02_task01 Найти ошибку в коде public sealed partial class MainPage :… Найти ошибку в коде Найти ошибку в коде 4 |
Volga_ Модератор 4669 / 2685 / 1440 Регистрация: 14.12.2018 Сообщений: 4,975 Записей в блоге: 1 |
||||
04.05.2023, 17:33 |
2 |
|||
tolik1048003, следующий раз покажите код вместо фото кода, пожалуйста. Добавлено через 6 минут
нечетных элементов Нечетные элементы как вы хотите будут положительными ? Или включаются отрицательными ? Добавлено через 23 секунды
2 |
0 / 0 / 0 Регистрация: 03.05.2023 Сообщений: 12 |
|
04.05.2023, 17:41 [ТС] |
3 |
Хорошо, исправлюсь! Миниатюры
0 |
Модератор 4669 / 2685 / 1440 Регистрация: 14.12.2018 Сообщений: 4,975 Записей в блоге: 1 |
|
04.05.2023, 17:46 |
4 |
Вот, программа некорректно считает сумму нечетных элементов массива. Нет, она уже правильно считает ! Добавлено через 1 минуту
0 |
Модератор 6068 / 3290 / 993 Регистрация: 07.09.2019 Сообщений: 5,214 |
|
04.05.2023, 18:03 |
5 |
Проблема в коде из стартового поста состояла в том, что в качестве условия нечётности было принято равенство остатка 1. А при делении на 2 отрицательного числа остаток равен -1. Поэтому если проверять неравенство остатка нулю, как сделано в верном коде из поста #2, то ошибок не будет.
2 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
04.05.2023, 18:03 |
5 |
Что в цикле foreach будет в $a и $b?
+ В $a будет ключ элемента массива, в $b будет значение элемента массива
— В $a и $b будут ключи массива
— В $a будет значение элемента массива, в $b ключ элемента массива
— Не верная запись foreach
— В $a и $b будут значения массива
Не забывайте, что порой приходится составлять отчёты, например отчёт о прохождении практики юриста, что можно найти на сайте www.Univerest.ru. Специалисты в таком сервисе знаю, что необходимо и составят отчёт максимально быстро по всем правилам и нормам.
Что означает запись: $arr[]=’значение’;
— Запись не допустимая, нужно указать ключ
— Создание массива $arr, с его инициализацией
+ Добавление элемента в конец массива $arr, с присвоением уникального и максимального числового индекса
— Добавление первого элемента массива $arr
Как преобразовать значение переменной в целое число?
— floatval
— unset
— is_int
+ intval
С помощью какого цикла, можно выполнить обход массива?
а) for
б) foreach
в) while
— Только б
+ Любого
— Только в
— а и в
— а и б
— Только а
— б и в
Какие типы значения может вернуть функция инструкцией return?
+ resource
+ boolean
+ array
+ string
+ integer
+ object
+ double
Какой оператор создан специально только для обхода массива?
— for
— in_array
— is_array
— array_bypassing
+ foreach
— while
В каком варианте правильно объявляется массив?
а) $arr=array();
б) $arr=’1′.’2′;
в) $arr=array(‘1′,’2’);
г) $arr=NULL;
— Только а
— Только б
— Только в
— Только г
+ Только а и в
— Только б и в
— Только а и б
Какая конструкция может использоваться для вывода текста?
а) echo
б) print
в) printf
г) vsecho
д) htmlspecialchars
е) chars
— а
+ а, б, в
— а, г
— д
— б, в
— е
— в
Какая конструкция позволяет включить файл только один раз, вне зависимости от количества вызовов?
а) include(‘index.php’);
б) include_once(‘index.php’);
в) require(‘index.php’);
г) require_once(‘index.php’);
— Только а и б
— Только б
— Только в и г
— Только в
— Только а и в
— Только г
— Только а
+ Только б и г
Какой из операторов является условным?
— foreach
+ if
— for
— while
Есть код:
Что у нас будет выведено в результате работы кода?
+ 15
— 510
— 5
— 10
Какой максимальный уровень вложенности многомерных массивов?
— 100
+ Теоретически не ограничен
— 10
— В PHP нет многомерных массивов
Есть код:
Что будет выведено в результате работы кода.
+ 510
— 10
— 5
— 15
Какое из условий будет истинно, если хотя бы одна из переменных true?
а) if($flag1 || $flag2) {};
б) if($flag1 && $flag2) {};
в) if($flag1 and $flag2) {};
г) if($flag1 or $flag2) {};
— Только в
— а и б
— б и г
— б и в
— Только а
— Только г
+ а и г
— Только б
Что будет выведено в результате работы кода?
— «Истина» и «Ложь»
+ «Истина»
— Ничего не будет выведено
— «Ложь»
С помощью какой конструкции можно подключить файл в php?
а) include
б) include_once
в) include_php
г) include_file
д) require
ж) require_once
+ а, б, д, ж
— только а
— а, б, в, г
— только д
— всех
— только в
С помощью какой инструкции функция может вернуть значение?
— input
— output
+ return
— exit
Найдите ошибку в данном коде:
— Нельзя использовать пустые кавычки {}, без оператора внутри
— Нельзя использовать больше 1 elseif
— Внутри if, elseif, else нет корректного условия
— Не допустима запись elseif($flag2) echo $flag2; без {}
+ У else не может быть условия
В каком случае в функции можно изменять значения переменной, заданное вне функции:
а) Используя массив $GLOBALS
б) Используя ключевое слово global
в) Передавая параметры функции по ссылке
— Ни один вариант не верный
— б
+ В любом варианте
— в
— а
В каком случае на экран будет выведен текст «Версия Битрикс 12»?
+ Только б
— В обоих
— Ни в одном
— Только а
Что означает такое объявление функции:
function get_sum($left=10, $right=5)
— Функция работает, только если ей переданы параметры get_sum(10, 5)
— Функция не принимает значения и инициализирует сразу две переменные
+ Функция имеет необязательные параметры и объявлены значения по умолчанию
— Не корректная форма записи
Как вывести на экран определенную ниже константу:
— echo $number;
— echo $NUMBER;
— echo $$number;
+ echo NUMBER;
Имеем массив:
Как нам напрямую обратиться к элементу со значением «Don» и заменить значение его на «Volgo-Don»?
— $ship[«Cargo ships»]=»Volgo-Don»
— $ship[«Cargo ships»][2]=»Volgo-Don»
— «$ship = array( «»Cargo ships»» => array(«»Volgo-Don»»), );»
— $ship[«Cargo ships»][«Don»]=»Volgo-Don»
+ $ship[«Cargo ships»][1]=»Volgo-Don»
Что будет результатом работы кода:
— 4
+ 3
— 3,4
— 3,5
— 3.0
С помощью какой функции можно проверить, является ли переменная массивом?
а) in_array
б) is_array
в) isset
г) array_search
— Только в и г
— Только г
— Только а и г
— Только б и в
— Только а
— Только в
— Только а и б
+ Только б
Какой код нужно использовать, если нам нужно вывести сообщение хотя бы один раз?
— Любой
— Только в
— б и в
— а и в
+ Только б
— Только а
— а и б
Требуется ли в PHP в обязательном порядке объявлять тип переменной?
+ нет
— да
Создайте рассылку в конструкторе за 15 минут. Отправляйте до 1500 писем в месяц бесплатно.
Ошибка 404, либо Error 404 Not Found появляется, если браузеру не удалось обнаружить на сервере указанный URL.
Сообщение об ошибке 404
Что означает ответ 404
Error 404 Not Found отображается по-разному: «HTTP 404 не найден», «Ошибка 404 Not Found», «404 Страница не найдена». Смысл надписи всегда остаётся тем же: страница отсутствует либо просто не работает. Not Found в переводе означает «не найдено».
Ошибка 404 — классический код ответа по протоколу HTTP. Он свидетельствует, что связь с сервером установлена, но информации по заданному запросу нет.
Однако если просто ввести в поисковую строку произвольный набор символов, то браузер не покажет ошибку 404 Not Found — появится сообщение, что установить соединение с конкретным сервером невозможно.
Разберёмся в техническом формировании ответа Error 404 Not Found.
Техническая сторона вопроса. При связи по HTTP браузер запрашивает указанный URL и ждёт цифрового ответа. То есть любой запрос пользователя направляется на сервер размещения искомого сайта. Когда браузеру удаётся связаться с сервером, он получает кодированный ответ. Если запрос корректный и страница найдена, отправляется ответ с кодом 200 OK, что соответствует благополучной загрузке. При отсутствии страницы отправляется ответ об ошибке.
Что значит код «404». В ответе 404 первая четвёрка указывает на то, что запрос был чрезмерно длительным или в самом адресе была ошибка. Ноль предполагает синтаксическую неточность. Завершающая цифра кода отображает конкретную причину ошибки — «4» означает отсутствие данной ссылки.
Какие ещё ошибки бывают. Ошибку 404 не нужно путать с другими ответами, которые указывают на невозможность связи с сервером. Например, ошибка 403 сообщает, что доступ к URL ограничен, а ответ «Сервер не найден» свидетельствует, что браузер не смог обнаружить место размещения сайта.
Google на 404 странице сообщает о возможных причинах ошибки
Причины ошибки
Причины, по которым HTTP возвращает ответ 404 Not Found:
В большинстве ситуаций ошибка 404 отображается, когда не удаётся обнаружить нужную страницу на доступном сервере.
Причины отсутствия страницы на сайте бывают разными
Возможные последствия для сайта
Нужно ли считать 404 ошибку опасной для сайтов? Кажется, что нет ничего плохого в том, что пользователь не смог открыть одну веб-страницу. Однако если такая ситуация будет повторяться регулярно, это чревато оттоком аудитории. Одни пользователи решат, что сайт вовсе не существует. Другие подумают, что лучше не заходить на сайт, который работает с ошибками. Третьи будут игнорировать ресурс, на котором не смогли получить обещанную информацию.
Поисковые системы относятся к Not Found более лояльно. Например, Google отмечает, что 404 страницы не влияют на рейтинг. Но если при индексации роботы будут находить все больше ошибочных страниц, вряд ли это приведёт к более высокому ранжированию.
Если вы хотите улучшить взаимодействие с посетителями, важно найти и исправить все ошибки 404 на сайте.
Как выявить ошибку
На небольшом ресурсе легко проверить работоспособность ссылок вручную. Но если на сайте сотни и тысячи страниц, без дополнительного софта не обойтись. Есть немало сервисов и программ, позволяющих находить битые ссылки. Рассмотрим некоторые из них.
Search Console Google
Консоль поиска Google позволяет находить страницы с ошибкой 404 за несколько кликов:
Чтобы получить список страниц с ошибками, подтвердите права на ресурс — добавьте проверочную запись TXT в записи DNS регистратора домена. Такая запись не повлияет на работу сайта. Подробнее о процедуре подтверждения, читайте в справке Google.
Для использования Search Console Google нужно подтвердить свои права на сайт
Яндекс Вебмастер
Сервис для вебмастеров от Яндекса поможет быстро найти все ошибки 404:
Чтобы использовать Яндекс. Вебмастер, также нужно подтвердить право владения сайтом — добавить метатег в HTML-код главной страницы.
Для входа в Вебмастер авторизуйтесь в Яндексе
Screaming Frog
Для начала загрузите и установите программу на компьютер. После запуска добавьте URL проверяемого сайта и начните поиск проблем. Неработающие ссылки можно искать даже в бесплатной версии.
Инструмент SEO-паук в Screaming Frog помогает найти технические неисправности сайта
SiteAnalyzer
Эта бесплатная десктопная программа позволяет обнаружить технические погрешности на сайте. SiteAnalyzer быстро отыщет нерабочие и несуществующие ссылки.
SiteAnalyzer бесплатно найдёт неработающие URL
Как исправить ошибку Not Found
Выбор конкретного решения зависит от причины ошибки:
Удалять и менять ссылки вручную удобно только на небольших сайтах. Исправление ошибок на крупных порталах лучше автоматизировать. Например, с помощью специальных плагинов для внутренней перелинковки (Terms Description, Dagon Design Sitemap Generator) и для автоматического формирования адресов страниц (Cyr-To-Lat).
Чтобы ошибки 404 появлялись как можно реже, достаточно соблюдать простые рекомендации:
Мы разобрались, как найти и исправить ошибки Not Found внутри сайта. Но неработающая ссылка может быть расположена и на стороннем ресурсе. Допустим, когда-то на другом сайте разместили рекламную публикацию со ссылкой на определённую страницу. Спустя какое-то время страницу удалили. В этом случае появится ошибка 404. Устранить её можно, связавшись с администрацией ссылающегося сайта. Если же удалить/исправить ссылку нельзя, постарайтесь использовать ошибку с выгодой.
Как сделать страницу 404 полезной
Грамотно оформленная страница с ошибкой Error 404 Not Found — действенный инструмент конвертации посетителей. Ограничений по использованию страницы с ошибкой 404 нет. При этом практически все CMS позволяют настраивать дизайн этой страницы.
Что публиковать на странице 404:
При оформлении страницы-ошибки желательно опираться на рекомендации поисковиков:
Главное — по возможности отказаться от стандартной страницы 404. Подумайте, как привлечь внимание пользователя. Расскажите ему об отсутствии искомой страницы и предложите взамен что-то полезное или интересное.
Примеры оформления страниц 404
Designzillas
Мультяшная страница креативной студии привлекает внимание и её хочется досмотреть до конца. Если прокрутить страницу, можно увидеть, как из яйца вылупится дракон. При этом на странице есть ссылки на все основные разделы сайта.
Меню на сайте Designzillas есть и на 404 странице
Domenart Studio
Веб-студия «Домен АРТ» использует красочную страницу 404, оформленную в единой стилистике ресурса. Заблудившимся пользователям предлагают попробовать ещё раз ввести адрес или перейти в нужный раздел.
Контакты, поиск, меню — и всё это на 404 странице Domenart Studio
«Эко Пауэр», дистрибьютор производителя источников питания, демонстрирует короткое замыкание как символ ошибки. Посетителям предлагают перейти на главную.
Ошибка 404 «Эко Пауэр» выглядит как страница входа
Дом со всем
Компания «Дом со всем», занимающаяся бурением скважин, разместила на странице 404 свои контакты и перечень услуг. Со страницы можно перейти в любой раздел сайта или заказать обратный звонок. С таким наполнением посетителю не нужно искать дополнительную информацию где-то ещё.
Компания «Дом со всем» предлагает заказать обратный звонок
Kualo
Страница 404 на веб-хостинге Kualo может заставить пользователя забыть, зачем он сюда пришёл. Увлекательная игра притягивает внимание. В конце игры посетителю предлагают посмотреть сайт хостинга.
На странице Kualo можно просто поиграть и заработать скидки
Рано или поздно с ошибкой 404 сталкивается большинство сайтов. При регулярной проверке можно своевременно исправить неработающие ссылки, чтобы в ответ пользователи получали код 200 OK. Но для крупного ресурса лучше настроить оригинальную страницу, которая будет отображаться при появлении ошибки Not Found и подскажет посетителям, что делать дальше.
Источники:
https://www. unisender. com/ru/support/about/glossary/chto-oznachaet-oshibka-404-na-sajte-i-chto-s-nej-delat/
Найдите ошибку в коде
12 264
17 ноября 2016 в 16:45
Простая задача, но все же требует внимательности, а также знаний в программировании. Итак, я дам вам небольшой кусочек кода, а вы скажите в чем здесь ошибка.
Вот сам код:
unsigned int i;
for (i = 100; i >= 0; --i)
printf("%dn", i);
В этом коде есть две небольшие ошибки, которые вам стоит найти.
Ошибки
Первым делом, стоит обратить внимания на неправильное определения переменной i
. Дело в том, что в данном случае оно является неверным. Тип unsigned int
говорит о том, что значения этой переменной могут быть только цифры, при чем только положительные цифры без знака минус. Данная запись приводит к тому, что цикл будет выполняться вечно, так как условие всегда будет истинным (true).
Корректный код состоял бы из такого условия i > 0
. Он мог бы вывести все значения, кроме нуля. Цикл завершился бы и тогда мы могли бы после самого цикла прописать еще и вывод 0
. К примеру, у нас бы получилось нечто вроде этого:
unsigned int i;
for (i = 100; i > 0; --i)
printf("%dn", i);
printf("%dn", i);
Вторая ошибка намного проще и заключается в том, что мы используем %d
вместо того чтобы использовать %u
. Поскольку мы выводим числа без минуса, то именно так должно все быть. В итоге у нас получился вот такой код, который верно выводит значения от 100 до 1:
unsigned int i;
for (i = 100; i > 0; --i)
printf("%un", i);
Больше интересных новостей