Задачи по php с решениями: Задачник по PHP (с решениями),PDF, 2018

Содержание

Еще немного задачек — PHP с нуля

Решать задачи — полезно для закрепления знаний и развития способностей к абстрактному мышлению. Поэтому предлагаю решить еще несколько из них. Что может быть интереснее?

Задача про банкомат

Слишком просто? Ок, давай усложним задачу. Добавим в банкомат банкноты номиналом 200 и 2000 р. После чего выставляем такое число банкнот: 1 по 5000, 4 по 2000, 1 по 500, 3 по 200 и пытаемся выдать 6600 р.

Подсказка: в таком варианте «жадный» алгоритм не сработает, и надо делать либо полный перебор всех возможных комбинаций купюр, либо искать готовое решение для задачи о размене (разновидность задачи о рюкзаке, что бы это не значило).

Сверху вниз

Заготовка с кодом для задачки: http://paste2.org/p/2339790 или http://ideone.com/gyWVz. Стихотворение можно прочесть по ссылке http://ru.

wikisource.org/wiki/Лиличка!_(Маяковский).

Считалка

По кругу

Расчет маршрута

Заготовка с кодом (экономит немало времени): http://ideone.com/ByiMuF или http://paste2.org/p/2461282.

Если кому-то интересно посмотреть на пример сайта, прокладывающего похожим способом маршрут: сайт rusavtobus.

Подсказка: в Википедии есть страница про алгоритмы поиска пути. Алгоритм Дейкстры, например, довольно прост. Вообще, эти алгоритмы используются много где, и в сети легко найти подробную информацию по этой теме, например: http://pmg.org.ru/ai/stout.htm (там речь о поиске пути на поле из клеточек, но суть та же).

дальше: Основы ООП и другие пасты →

—–

Куда вводить код? Что надо скачать? Читай первый урок.

Есть вопросы? Задай гуглу или автору.

Нравится урок? Лайкай, репости, приглашай друзей, пости котов и Канако, шли добра, решай задачи, помогай новичкам! Кнопок для лайка нет, кто хочет зарепостить, всегда может сделать это ручками.

Как связаться с автором? Я хочу переодеть его в платье школьницы и жениться на нем. Ящик codedokode (кот) gmail.com ждет ваших писем. А вконтактик и фейсбучек ждут ваших лайков. Но ответ на банальные вопросы лучше искать в Гугле или на stackoverflow.

Я решил задачку!!! Молодец, делай следующий урок

Ideone не работает!11 Ну так открой Гугл и найди сайты вроде https://repl.it/languages/php , http://phptester.net/ , http://sandbox.onlinephpfunctions.com/ , http://codepad.org/ или http://www.runphponline.com/ . Не ленись.

Почему так много рекламы? Всю рекламу на сайте ставит юкоз (бесплатный хостинг же), а не я.

На сайте установлена система Google Analytics (и еще несколько аналогичных систем от юкоза). Данные о твоем IP-адресе, посещаемых страницах, времени посещения отправляются в Google Corporation, США. Хочу знать, кто и зачем сюда заходит. Поверь, другие сайты делают точно так же. Все сайты пишут логи.

Задачи по PHP. Реальные практические задачи

Задачи по PHP. Реальные практические задачи

Реальные задачи по PHP

перейти к содержанию задачника

  1. Парсер цены с сайта по ссылке Пользователь берет ссылку из интернет-площадки (список ниже) и вставляется в поле. Далее нажимает на кнопку и ему показывается цена товара + мой фиксированный процент.
    Если на странице интернет-площадки указана и доставка, то пользователю показывается цифра, состоящая из цена_товара+доставка+мой_фиксированный_процент. Список интернет-площадок:
    forever21.com
    aliexpress.com
    taobao.com
    ebay.com
    amazon.com 

    Функционал примерно такой как здесь http://savefrom.ne/, только вместо видео будет показываться цена.

  2. Интернет-витрину для сервиса доставки еды Требуется разработать интернет – площадку для сервиса доставки еды.
    Аналог http://restoranonline.ru/
    Макет сайта в формате PSD готов. 

    Предпочтительные технологии:
    Frontend:  HTML5 , CSS 3,  JavaScript,  JQuery, Bootstrap 3
    Backend:  mysql, PHP5, Yii 2

    В откликах хочу видеть предложения по срокам, предыдущий опыт, примеры реализованных проектов

  3. Разработать аналог функционала

    Нужно на фреймворке (предлагайте) реализовать функционал kolesa.kz
    верстка есть.
    предлагайте стоимость и сроки

    поэтапная ПОСТоплата или через гарант (СБР, fairplay)

  4. Разработка сайта для распределения учебной нагрузки

    Требуется разработать web-приложение, которое позволит распределять учебную нагрузку среди преподавателей кафедры, а именно:

    • Регистрировать ФИО преподавателей (в т. ч. указывать уч.степень, уч.звание)
    • Вбивать названия предметов (будет большой список)
    • Вбивать плановые часы на каждый конкретный предмет (сколько всего часов, в т.ч. лекций, лабораторных, практических и т.п.: возможность добавлять новые поля для часов под предметы)
    • Вбивать другую учебную нагрузку – курсовые работы, магистерские, и т.п.
    • Определять сколько часов «стоит» руководство 1 курсовой работой  (к примеру, 1 курсовая = 10 часов).
    • «Отдавать» часы преподавателю (программа сама из бюджета времени подсчитает остатки часов и скажет, сколько еще осталось нераспределенных курсовых работ)
    • Устанавливать ставку преподавателям (0,25; 0,5; 0,75; 1; и т.п. ставки + почасовка) и из этого планировать нагрузку преподавателям
    • Закреплять предметы и распределять учебную нагрузку среди преподавателей
    • Подсчитывать сколько распределенных часов уже имеется у каждого конкретного преподавателя (возможность добавлять/удалять доп.нагрузку)
    • Делать ежемесячные срезы учебной нагрузки для всех и для каждого преподавателя, в т. ч. для подачи сведений в бухгалтерию
    • Экспортировать общую нагрузку кафедры за год, за квартал, за месяц, а также с разбивкой за всех/за каждого преподавателя в файл формата Excel.
    • Экспортировать годовую нагрузку каждого преподавателя в индивидуальный план преподавателя (файл формата Wordсогласно конкретному шаблону).

    Пишите цены и сроки.

  5. Интернет магазин инструментов для автосервиса под ключ

    Нужен интернет магазин инструментов для автосервиса под ключ, платёжные системы обязательны (хотя бы одна)

    Что нужно:
    -форма быстрого заказа (прямо около товара) и корзина (1 страница 3 поля и кнопка)
    -далее планируется продвижение сайта, поэтому адреса всех страниц должны быть транслитом и все необходимые для SEO модули и штуки, а также поле в админке в котором можно будет разместить текст ниже плитки товаров
    -отсутствие ошибок в SEO, дыр в сайте, лишних элементов
    -на плитке с товарами должна быть возможность вывести краткое описание товара, цену, картинку, название и кнопку “Купить”
    -должен быть каталог
    -нужна современная аккуратная вёрстка (отдельно под мобильные устройства не нужно верстать)
    -возможность делать акцию с таймером и добавлять товары в хиты продаж
    -на карточке товара внизу должны быть похожие товары
    -возможность без знаний программирования самому создавать и редактировать страницы (доставки, оплаты и со статьями), редактировать меню
    -при покупке должно приходить письмо с оповещением на почту
    -для редактирования текстов на сайте нужен редактор типа word
    -важна скорость загрузки сайта и удобная панель управления.
    -логотип(дам), простой поиск и телефон в шапке сайта
    -в будущем возможно нужен будет несложный фильтр товаров
    -Срок от 2-х,3-х недель до месяца максимум!

    Дизайн не очень критичен, минимализм, классика и удобство приветствуется.

    Нужно будет внести список товаров 100 шт, есть список в excel, отдельно напишите цену за заполнение.

    Напишите CMS которую хотите использовать и почему, примеры интернет-магазинов, которые делали, скайп, ПОЧТУ и ЦЕНУ обязательно!
    При отсутствии серьёзных жалоб seo-шников и специалиста по юзабилити и успешной сдачи проекта, предложим постоянное сотрудничество!
    joomla не желательно, был плачевный опыт.

  6. Компании требуется высоко-квалифицированный PHP разработчик для поддержания имеющихся и разработки новых программных продуктов.

    Идеальный кандидат обладает опытом работы с высоконагруженными проектами, внимательностью, ответственностью и умением работать в команде.

    Необходимые навыки: php

    Инструкции:

    Для участия в собеседовании Вам необходимо решить эту “головоломку”.

    Она состоит из нескольких этапов, на каждом из которых вы будете получать очередной код + задание для следующего этапа – приложите эти коды в начале Вашего резюме при подаче заявки. К рассмотрению принимаются заявки только с наибольшим количеством пройденных этапов.

    Задание “головоломки”:
    ​QzBERTAxNzIwMDAwMjA3Mzc0NjU3MDYzNkY2NDY1M0EzMjMzMzkzNTJDMjA2ODc0NzQ3MDNBMkYyRjY3NkY2RjJFNjc2QzJGNDc2RDQxNDgzMDY0

  7. Простая CMS php/js/mysql/

    3 Вида Аккаунта: Админ, Рекламодатель, Вебмастер

    Функционал:
    Рекламодатель:
    Сумма на счете, Статистика переходов на URL, Возможность Добавить URL, Делить трафик RU/СНГ
    Статистика:
    Дата / Переходы RU/ Переходы СНГ / Сумма Переходов/ CPM RU / CPM СНГ / CPM / Сумма (денежное выражение)
    Фильтр по датам.
    Итого за выбранный период показатели статистики.

    Вебмастер:
    Сумма не счете, Заказ выплаты

    Статистика:
    Дата / Переходы RU/ Переходы СНГ / Сумма Переходов/ CPM RU / CPM СНГ / CPM / Сумма (денежное выражение)
    Фильтр по датам.
    Итого за выбранный период показатели статистики.
    Добавить Поток
    Получить код
    История Выплат
    Заказ выплаты 

    Админ:
    Найстрйока Редиректа (http/js/php), Настройка рекламных компаний:
    Приоритет Рекламодатель – ссылка:
    1-е открытие , 2-е открытие, 3-е открытие, и т.д. добавить.
    Цена для Вебмастера, Цена для Рекламодателя, Общая статистика: по рекламе, по вебмастерам
    К статистике добавляем / Профит.
    Выплаты /открытые/закрытие

    Добавить Вебмастера = Форме регистрации Вебмастера
    Данные: email (логин), Кошелек, Пароль, skype(необязательно), телефон ( необязательно)

    Добавить рекламодателя = Форме регистрации Рекламодателя: email(логин), пароль, скайп.
    В статистике фиксим редиректы с поддомена ( на другом ip)

    Получить код:
    Количество показов 1-10 на пользователя (по ip/куке)
    Код для Вебмастера = php куки с записью в файл( если по куке)
    url xxx.example.ru/Id
    Сверху можно обтянуть бутстрапом ( максимально просто)

  8. Сервис онлайн опросов

    Сервис онлайн опросов позволяет сотрудникам отвечать на тесты. Собирать отчеты об ответах на тесты сотрудников. Через специальный интерфейс авторизованные администраторы могут создавать и редактировать онлайн тесты. Просматривать статистику прохождения тестов.

    Тесты состоят из текстовых вопросов, вопросов с изображениями. И либо открытыми либо закрытыми ответами.

    Вопросы могут быть как открытыми (сотрудник должен ввести в поле правильный ответ). Так и закрытыми (сотрудники выбирают правильный ответ из нескольких предложенных)

    Результаты прохождения тестов, какие сотрудник дал ответы на вопросы, сколько тестов прошел, и т.д. передаются в кабинет менеджеров. В котором он соответственно может просматривать статистику прохождения тестов сотрудниками.

  9. Почтовая система на php
    Есть сайт тренингов с зарегистрированными пользователями. У каждого пользователя свой личный кабинет. Данные пользователя: фио, дата регистрации, email, предпочтения (список направлений тренингов), список пройденных, текущих и планируемых тренингов и др.
    Потовая система должна осуществлять рассылку сообщений пользователем в личные кабинеты и/или на еmail.
    Возможности: настройки периодичности рассылки, выбор пользователей по критериям, хранение истории рассылки, статистика (какие пользователя читают рассылку, показатели эффективности рассылки и др.). Письма на email не должны попадать в спам.
  10. Парсер двух форумов

    Нужно сделать парсер форумов http://searchengines.guru/  и http://www.maultalk.com/, который будет собирать следующую информацию:

    1. Название темы со ссылкой на страницу форума
    2. Количество ответов
    3. Количество просмотров
    4. Дата и время последнего сообщения
    5. Количество сообщений за выбранный период

    И выводить эту информацию в виде таблицы, отсортировав темы по количеству сообщений за выбранный период.

    Парсеры должны работать через прокси, чтобы избежать блокировок.

  11. Веб-скрипт, заменяющий слова на страницах

    Требуется написать скрипт, заменяющий слова на странице из словаря с учетом окончаний и морфологии слова.

    Пользователь вводит адрес страницы, например yandex.ru, сервер обрабатывает весь текст на странице и выводит страницу с сохранением стилей и изображений, но с замененным текстом на слова из словаря.

    Подбор слов из словаря осуществляется по количеству букв(+\- 2 буквы) и части речи (определяется по окончанию, понятно что может быть не идеально, но в пределах 5% ошибок – сделать реально).

    Платформа на выбор исполнителя, желательно максимально эффективная серверная или клиентская логика для обработки большого числа запросов одновременно.

  12. Сайт заявок
    На сайте авторизация через вк.Автоматически из профиля вк. Заполняется информация. пол, возраст, страна, аватарка, информация. 

    Так же пользователь позднее может отредактировать эти данные. Или заполнить вручную если не удалось заполнить автоматически.

    Пользователи могут оставлять заявки на сайте. Заявки после заполнения попадают в каталог заявок. Заявки можно отфитльтровать. Существуют различные типы заявок. В зависимости от их типа. Фильтры заявок меняются. К заявкам можно писать комментарии

  13. CRM. В городе 5 филиалов организации. В каждой организации по 2-3 пользователя CRM, которые добавляют новых пришедших в базу. Причина стандартная — сейчас организация одна, а базы у всех свои. Вот и носятся
    При входе в систему должна быть возможность выбрать «Добавить клиента», «Просмотр базы», «Поиск». 

    «Добавить клиента».
    В базе стандартные поля по каждому пришедшему: номер досье (должен генериться +1 к предыдущему), возраст, имя, язык, количество детей, и еще 3-5 колонок. Если у клиента есть дети, жена/муж — то они также добавляются в базу и привязаны к первому заявителю (клиенту). Открыв карточку ребенка можно увидеть всю семью.
    А также нужен аплоад нескольких файлов (pdf, doc, jpg).

    «Просмотр базы»
    У каждого филиала есть права видеть только своих клиентов с возможностью поиска. Возможность фильтра и экспорта в Эксель.
    У ревизора есть права видеть всех (с возможность экспортировать всех в Эксель).

    «Поиск»
    Моментальный поиск клиента (по первым введенным буквам в поле Имя, Фамилия). Отдельный поиск по номеру досье. При выборе клиента есть возможность редактировать его карточку.

  14. Карты. Необходимо создать веб-приложение для управления базой данных бонусных карт (карты лояльности).Инструменты: нативный PHP или любой PHP фреймворк. Можно использовать jQuery.Список полей: серия карты, номер карты, дата выпуска карты, дата окончания активности карты, дата использования, сумма, статус карты (не активирована/активирована/просрочена).Функционал приложения
    – список карт с полями: серия, номер, дата выпуска, дата окончания активности, статус
    – поиск по этим же полям
    – просмотр профиля карты с историей покупок по ней
    – активация/деактивация карты
    – удаление карты
    – реализовать генератор карт, с указанием серии и количества генерируемых карт, а также “срок окончания активности” со значениями “1 год”, “6 месяцев” и “1 месяц”. После истечения срока активности карты, у карты проставляется статус “просрочена”.

    Примечаниеполя с датами должны содержать также и время.

  15. Биржа труда. 1. Есть три типа пользователей: (1) Администратор; (2) Пользователь А; (3) Пользователь Б. У каждой роли свои права и возможности.
    2. Пользователь А может создавать объявления по заданным параметрам. Созданные объявления помещаются в общую таблицу с задачами других пользователей А.
    3. Создавая задачу пользователь заполняет определенные поля. Администратор имеет возможность регулировать кол-во полей формы, дополнять и удалять.
    4. В форме присутствуют несколько типов полей: текст, дата, время, мультитекст, чекбокс, радио, теги. Каждый тип имеет свои свойства. К примеру при выборе даты система предлагает выбрать дату через календарь. Вывод выбранной даты в таблице осуществляется по модели указания числа и кол-ва дней оставшихся до этой даты.
    5. Указанные поля в форме автоматически отображаются в общей таблице. При этом каждый пользователь может скрывать/открывать поля в таблице.
    6. Пользователи А и Б могут просматривать таблицу, где расположена все задачами по всем пользователям А. Задачи выводятся согласно пользовательским фильтрам по стандартной схеме. Изначально задачи выводятся по свежести. Задачи, которые просрочены или которые сняты автоматически уходят в архив.
    7. У каждой задачи есть несколько функций: (а) комментарии к задаче; (б) кнопка выбрать комментарий; (в) аналитика по кол-ву комментариев и принятым комментариям.
    8. Отдельно администратор должен иметь возможность создавать категории и дополнительные элементы фильтров задач. К примеру, администратор может создать категории Hr/Marketing и добавить фильтр города( Москва, Питер и т.д.). Система автоматически выведет категории рядом с таблицей. По умолчанию все старые задачи примут первый параметр в категории.
    9. Пользователь А имеет вкладку Мои задания. Пользователь Б имеет вкладку Мои ответы. Каждый из них может анализировать свою активность.
    10. Система по модели похожа на биржу труда, где есть заказчики и исполнители. При этом созданную таблицу можно использовать в разных секторах, к примеру в логистике.
  16. Веб-портал для приема сообщений

    Функция портала заключается в аккумулировании присылаемых сообщений на определенный почтовый адрес.
    Авторизация. Автоматическое генерирование логина, пароля и рассылка необходимым контактам с определенной периодичностью.
    На странице лента из превью сообщений (дата, адресат, тема, содержание)

  17. Написание системы комментариев на PHP.
    Основное:
    Отправка комментария пользователем.
    Отображение времени отправки комментария.
    Отображение имени отправителя.
    Возможность редактирования комментария.
    Возможность удаления комментария.
    Возможность отправить комментарий анонимно.
    Скрин верстки комментариев прикреплен.

    Самое важное:
    Безопасность
    Скорость работы
    Расчет на огромные нагрузки.  

  18. Пример ТЗ сайта Кредит+

 

Метки PHP, задачи. Смотреть запись.

© 2013-2022 Репетитор по скайпу Использование материалов согласовывать с администратором сайта

Задачи по Python 3 для начинающих от Tproger и GeekBrains

Вместе с факультетом Python-разработки GeekUniversity собрали для вас несколько простых задач по Python для обучения и тренировки. Их можно решать в любом порядке.

Обратите внимание, что у любой задачи по программированию может быть несколько способов решения. Чтобы посмотреть добавленный нами вариант решения, кликните по соответствующей кнопке. Все приведённые варианты написаны на Python 3.

***

Задача 1

Есть список a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89].

Выведите все элементы, которые меньше 5.

Самый простой вариант, который первым приходит на ум — использовать цикл for:

for elem in a:
    if elem < 5:
        print(elem)

Также можно воспользоваться функцией filter, которая фильтрует элементы согласно заданному условию:

print(list(filter(lambda elem: elem < 5, a)))

И, вероятно, наиболее предпочтительный вариант решения этой задачи — списковое включение:

print([elem for elem in a if elem < 5])

Задача 2

Даны списки:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89];

b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13].

Нужно вернуть список, который состоит из элементов, общих для этих двух списков.

Можем воспользоваться функцией filter:

result = list(filter(lambda elem: elem in b, a))

Или списковым включением:

result = [elem for elem in a if elem in b]

А можно привести оба списка к множествам и найти их пересечение:

result = list(set(a) & set(b))

Однако в таком случае каждый элемент встретится в результирующем списке лишь один раз, т.к. множество поддерживает уникальность входящих в него элементов. Первые два решения (с фильтрацией) оставят все дубли на своих местах.

Задача 3

Отсортируйте словарь по значению в порядке возрастания и убывания.

Импортируем нужный модуль и объявляем словарь:

import operator 
d = {1: 2, 3: 4, 4: 3, 2: 1, 0: 0}

Сортируем в порядке возрастания:

result = dict(sorted(d.items(), key=operator. itemgetter(1)))

И в порядке убывания:

result = dict(sorted(d.items(), key=operator.itemgetter(1), reverse=True))

Задача 4

Напишите программу для слияния нескольких словарей в один.

Допустим, вот наши словари:

dict_a = {1:10, 2:20}
dict_b = {3:30, 4:40}
dict_c = {5:50, 6:60}

Объединить их можно вот так:

result = {}
for d in (dict_a, dict_b, dict_c):
    result.update(d)

А можно с помощью «звёздочного» синтаксиса:

result = {**dict_a, **dict_b, **dict_c}

О звёздочном синтаксисе можно прочитать в нашей статье.

Задача 5

Найдите три ключа с самыми высокими значениями в словаре my_dict = {'a':500, 'b':5874, 'c': 560,'d':400, 'e':5874, 'f': 20}.

Можно воспользоваться функцией sorted:

result = sorted(my_dict, key=my_dict.get, reverse=True)[:3]

Аналогичный результат можно получить с помощью функции nlargest из модуля heapq:

from heapq import nlargest
result = nlargest(3, my_dict, key=my_dict. get)

Читайте также: Всё о сортировке на Python

Задача 6

Напишите код, который переводит целое число в строку, при том что его можно применить в любой системе счисления.

Второй аргумент функции int отвечает за указание основания системы счисления:

print(int('ABC', 16))

Задача 7

Нужно вывести первые n строк треугольника Паскаля. В этом треугольнике на вершине и по бокам стоят единицы, а каждое число внутри равно сумме двух расположенных над ним чисел.

def pascal_triangle(n):
   row = [1]
   y = [0]
   for x in range(max(n, 0)):
      print(row)
      row = [left + right for left, right in zip(row + y, y + row)]
   
pascal_triangle(6) 

Задача 8

Напишите проверку на то, является ли строка палиндромом. Палиндром — это слово или фраза, которые одинаково читаются слева направо и справа налево.

Тут всё просто, достаточно сравнить строку с её обратной версией, для чего можно использовать встроенную функцию reversed:

def is_palindrome(string):
    return string == ''.join(reversed(string))

print(is_palindrome('abba'))

Того же эффекта можно добиться с помощью срезов:

def is_palindrome(string):
    return string == string[::-1]

print(is_palindrome('abba'))

Задача 9

Сделайте так, чтобы число секунд отображалось в виде дни:часы:минуты:секунды.

def convert(seconds):
    days = seconds // (24 * 3600)
    seconds %= 24 * 3600
    hours = seconds // 3600
    seconds %= 3600
    minutes = seconds // 60
    seconds %= 60
    print(f'{days}:{hours}:{minutes}:{seconds}')

convert(1234565)

Задача 10

Вы принимаете от пользователя последовательность чисел, разделённых запятой. Составьте список и кортеж с этими числами.

values = input('Введите числа через запятую: ')
ints_as_strings = values.split(',')
ints = map(int, ints_as_strings)
lst = list(ints)
tup = tuple(lst)
print('Список:', lst)
print('Кортеж:', tup)

Задача 11

Выведите первый и последний элемент списка.

lst = [1, 2, 3, 4, 5]
print(f'Первый: {lst[0]}; последний: {lst[-1]}')

Задача 12

Напишите программу, которая принимает имя файла и выводит его расширение. Если расширение у файла определить невозможно, выбросите исключение.

def get_extension(filename):
    filename_parts = filename.split('.')
    if len(filename_parts) < 2:  # filename has no dots
        raise ValueError('the file has no extension')
    first, *middle, last = filename_parts
    if not last or not first and not middle:
        # example filenames: . filename, filename., file.name.
        raise ValueError('the file has no extension')
    return filename_parts[-1]

print(get_extension('abc.py'))
print(get_extension('abc'))  # raises ValueError
print(get_extension('.abc'))   # raises ValueError
print(get_extension('.abc.def.'))   # raises ValueError

Задача 13

При заданном целом числе n посчитайте n + nn + nnn.

def solve(n):
    n1 = n
    n2 = int(str(n) * 2)
    n3 = int(str(n) * 3)
    print(n1 + n2 + n3)

solve(5)

Задача 14

Напишите программу, которая выводит чётные числа из заданного списка и останавливается, если встречает число 237.

numbers = [    
    386, 462, 47, 418, 907, 344, 236, 375, 823, 566, 597, 978, 328, 615, 953, 345, 
    399, 162, 758, 219, 918, 237, 412, 566, 826, 248, 866, 950, 626, 949, 687, 217, 
]

for x in numbers:
    if x == 237:
        break
    elif x % 2 == 0:
        print(x)

Задача 15

Напишите программу, которая принимает два списка и выводит все элементы первого, которых нет во втором.

set_1 = set(['White', 'Black', 'Red'])
set_2 = set(['Red', 'Green'])

print(set_1 - set_2)

Задача 16

Выведите список файлов в указанной директории.

from os import listdir
from os.path import isfile, join
files = [f for f in listdir('/home') if isfile(join('/home', f))]
print(files)

Задача 17

Сложите цифры целого числа.

def sum_digits(num):
    digits = [int(d) for d in str(num)]
    return sum(digits)

print(sum_digits(5245))

Задача 18

Посчитайте, сколько раз символ встречается в строке.

string = 'Python Software Foundation'
string.count('o')

Задача 19

Поменяйте значения переменных местами.

Можно написать монструозную конструкцию в стиле языка C:

x = 5
y = 10
temp = x
x = y
y = temp

Но в Python есть более удобный способ для решения этой задачи:

x = 5
y = 10
x, y = y, x

Задача 20

С помощью анонимной функции извлеките из списка числа, делимые на 15.

nums = [45, 55, 60, 37, 100, 105, 220]
result = list(filter(lambda x: not x % 15, nums))

Задача 21

Нужно проверить, все ли числа в последовательности уникальны.

def all_unique(numbers):
    return len(numbers) == len(set(numbers))

Задача 22

Напишите программу, которая принимает текст и выводит два слова: наиболее часто встречающееся и самое длинное.

import collections

text = 'lorem ipsum dolor sit amet amet amet'
words = text.split()
counter = collections.Counter(words)
most_common, occurrences = counter.most_common()[0]

longest = max(words, key=len)

print(most_common, longest)

***

Хотите вырасти от новичка до профессионала? Факультет Python-разработки GeekUniversity даёт год опыта для вашего резюме. Обучайтесь на практических заданиях, по-настоящему освойте Python и станьте ближе к профессии мечты.

Узнать больше

PHP упражнения, практика, решение

script1adsense2code

script1adsense3code

Что такое PHP?

PHP (рекурсивная аббревиатура для PHP: Hypertext Preprocessor) – широко используемый универсальный язык сценариев с открытым исходным кодом, который особенно подходит для веб-разработки и может быть встроен в HTML.

Лучший способ научиться чему-либо – это тренироваться и задавать вопросы. Мы начали этот раздел для тех (от новичка до среднего), кто знаком с PHP .

Надеюсь, эти упражнения помогут вам улучшить свои навыки кодирования PHP. В настоящее время доступны следующие разделы, мы прилагаем все усилия, чтобы добавить больше упражнений. Удачного кодирования!

Примечание: хорошо, если вы играете с кодами PHP с помощью онлайн-редактора PHP, чтобы насладиться полноценной средой PHP (поскольку онлайн-редакторы имеют несколько оговорок, например, встраивание PHP в HTML) и работают на своем компьютере гораздо лучше, чем изучать PHP. Пожалуйста, прочитайте нашу установку PHP на Windows и Linux, если вы не знакомы с установкой PHP.

Список упражнений PHP:

Проблемы с PHP:

Примечание: одну и ту же задачу (решение упражнений) можно выполнить различными способами, поэтому описанные здесь способы не являются единственными способами выполнения заданий. Скорее, было бы здорово, если это все равно поможет вам выбрать свои собственные методы.

Популярность языка программирования По всему миру, август 2019 года по сравнению с прошлым годом:

Ранг + Изменить язык Поделиться тенденция
1 питон 28,73% +4,5%
2 Джава 20,0% -2,1%
3 Javascript 8,35% -0,1%
4 C # 7,43% -0,5%
5 PHP 6,83% -1,0%
6 C / C ++ 5,87% -0,3%
7 р 3,92% -0,2%
8 Objective-C 2,7% -0,6%
9 стриж 2,41% -0,3%
10 Matlab 1,87% -0,3%
11 Машинопись 1,76% + 0,2%
12 Рубин 1,44% -0,2%
13 Котлин 1,43% + 0,4%
14 VBA 1,41% -0,0%
15 Идти 1,21% + 0,3%
16 Scala 1,15% -0,1%
17 Visual Basic 1,1% -0,1%
18 Ржавчина 0,63% + 0,3%
19 Perl 0,58% -0,1%
20 Lua 0,37% -0,0%
21 Haskell 0,3% +0. 0%
22 Delphi 0,27% +0.0%
23 Юля 0,26% + 0,1%

Источник: http://pypl.github.io/PYPL.html

Индекс TIOBE за август 2019 года

Авг 2019 Авг 2018 + Изменить Язык программирования Рейтинги + Изменить
1 1 Джава 16,028% -0,85%
2 2 С 15,154% + 0,19%
3 4 питон 10,020% + 3,03%
4 3 C ++ 6,057% -1,41%
5 6 C # 3,842% + 0,30%
6 5 Visual Basic .NET 3,695% -1,07%
7 8 JavaScript 2,258% -0,15%
8 7 PHP 2,075% -0,85%
9 14 Objective-C 1,690% + 0,33%
10 9 SQL 1,625% -0,69%
11 15 Рубин 1,316% + 0,13%
12 13 MATLAB 1,274% -0,09%
13 44 Groovy 1,225% + 1,04%
14 12 Delphi / Object Pascal 1,194% -0,18%
15 10 язык ассемблера 1,114% -0,30%
16 19 Visual Basic 1,025% + 0,10%
17 17 Идти 0,973% -0,02%
18 11 стриж 0,890% -0,49%
19 16 Perl 0,860% -0,31%
20 18 р 0,822% -0,14%

Источник: https://www. tiobe.com/tiobe-index/

Список упражнений с решениями:

  • HTML CSS Упражнения, Практика, Решение
  • Упражнения JavaScript, Практика, Решение
  • JQuery упражнения, практика, решение
  • Упражнения, практика, решение jQuery-UI
  • CoffeeScript упражнения, практика, решение
  • Twitter Bootstrap Упражнения, практика, решение
  • C Программирование Упражнения, Практика, Решение
  • Упражнения по программированию на C # Sharp, практика, решение
  • PHP упражнения, практика, решение
  • Python упражнения, практика, решение
  • R Программирование Упражнения, Практика, Решение
  • Упражнения на Java, Практика, Решение
  • Упражнения по SQL, практика, решение
  • MySQL упражнения, практика, решение
  • PostgreSQL Упражнения, Практика, Решение
  • SQLite Упражнения, Практика, Решение
  • MongoDB Упражнения, Практика, Решение
  • Эйлер проект

[Хотите внести свой вклад в упражнения PHP? Отправьте ваш код (прикрепленный к ZIP-файлу) нам на w3resource [at] yahoo [dot] com. Пожалуйста, избегайте материалов, защищенных авторским правом.]

Список упражнений с решениями:

  • HTML CSS Упражнения, Практика, Решение
  • Упражнения JavaScript, Практика, Решение
  • JQuery упражнения, практика, решение
  • Упражнения, практика, решение jQuery-UI
  • CoffeeScript упражнения, практика, решение
  • Twitter Bootstrap Упражнения, практика, решение
  • C Программирование Упражнения, Практика, Решение
  • Упражнения по программированию на C # Sharp, практика, решение
  • PHP упражнения, практика, решение
  • Python упражнения, практика, решение
  • Упражнения на Java, Практика, Решение
  • Упражнения по SQL, практика, решение
  • MySQL упражнения, практика, решение
  • PostgreSQL Упражнения, Практика, Решение
  • SQLite Упражнения, Практика, Решение
  • MongoDB Упражнения, Практика, Решение
  • Эйлер проект

Задачи Перельмана – Экспериментаниум

ДАЛЬНЯЯ СТРЕЛЬБА 

Обстреливать противника с расстояния в сотню и более километров впервые начала германская артиллерия к концу империалистической войны (1918 г. ). Англичане и французы в это время начали использовать авиацию. Германский штаб избрал другой, артиллерийский, способ поражать столицу Франции, удаленную от фронта не менее чем на 110 км. Способ этот был совершенно новый, никем еще не испытанный. Наткнулись на него немецкие артиллеристы случайно. При стрельбе из крупнокалиберной пушки под большим углом возвышения неожиданно обнаружилось, что вместо дальности в 20 км достигается дальность в 40 км. Почему так получилось?


Оказалось, что снаряд, посланный круто вверх с большой начальной скоростью, достигает тех высоких разреженных слоев атмосферы, где сопротивление воздуха весьма незначительно; в такой слабо сопротивляющейся среде снаряд пролетает значительную часть своего пути и затем круто опускается на землю. Рисунок наглядно показывает, как велико различие в путях снарядов при изменении угла возвышения.

ЧТО ТЯЖЕЛЕЕ?

На одну чашку весов поставлено ведро, до краев наполненное водой. На другую – точно такое же ведро, тоже полное до краев, но в нем плавает кусок дерева.  Какое ведро перетянет?

Оба ведра имеют одинаковый вес. Во втором ведре, правда, воды меньше, нежели в первом, потому что плавающий кусок дерева вытесняет некоторый ее объем. Но, по закону плавания, всякое плавающее тело вытесняет своей погруженной частью ровно столько жидкости (по весу), сколько весит все это тело. Вот почему весы и должны оставаться в равновесии.

БЕЗДОННАЯ ЯМА

О том, что делается в глубоких недрах нашей планеты, известно пока очень мало. Одни полагают, что под твердой корой в сотню километров толщины начинается огненно-жидкая масса; другие считают весь земной шар отвердевшим до самого центра. Решить вопрос трудно: ведь самая глубокая скважина простирается не глубже 7,5 км, самая глубокая шахта, в которую проник человек, расположена на глубине 3300 м, а радиус земного шара равен 6400 км. Если бы можно было просверлить через нашу планету сквозной колодец, прорезающий земной шар по диаметру, – тогда подобные вопросы были бы разрешены. Современная техника далека еще от возможности осуществления подобных предприятий, – хотя все прорытые в земной коре буровые скважины, взятые вместе, составили бы длину, превышающую диаметр нашей планеты.  О прорытии сквозного туннеля через земной шар мечтали в восемнадцатом веке математик Мопертюи и философ Вольтер.

Ничего подобного, конечно, пока еще не сделано; но воспользуемся воображаемым бездонным колодцем, чтобы заняться одной любопытной задачей. Как вы думаете, что было бы с вами, если бы вы упали в такой бездонный колодец (о сопротивлении воздуха на время забудем)? Разбиться о дно вы не можете, дна здесь не существует, – но где же вы остановитесь? В центре Земли? Нет.


Когда вы долетите до центра, тело ваше будет иметь такую колоссальную скорость (около 8 км/сек), что об остановке в этой точке не может быть и речи. Вы промчитесь далее и будете нестись, постепенно замедляя движение, пока не поравняетесь с краями противоположного конца колодца. Здесь надо будет вам покрепче ухватиться за края, – иначе вы вновь проделаете прогулку через весь колодец до другого конца. Если и тут не удастся вам ухватиться за что-нибудь, вы опять полетите в колодец и будете качаться так без конца.  Механика учит, что при таких условиях (если только, повторяю, пренебречь сопротивлением воздуха в колодце) тело должно качаться туда и назад вечно.

Какова была бы продолжительность одного такого качания? Оказывается, что весь путь туда и обратно занял бы 84 минуты 24 секунды, т. е. круглым счетом полтора часа.


ПРИСАСЫВАНИЕ КОРАБЛЕЙ

Осенью 1912 г. с океанским пароходом «Олимпик» – тогда одним из величайших в мире судов – произошел следующий случай. «Олимпик» плыл в открытом море, а почти параллельно ему, на расстоянии сотни метров, проходил с большой скоростью другой корабль, гораздо меньший, броненосный крейсер «Гаук». Когда оба судна заняли положение, изображенное на рисунке, произошло нечто неожиданное: меньшее судно стремительно свернуло с пути, словно повинуясь какой-то невидимой силе, повернулось носом к большому пароходу и, не слушаясь руля, двинулось почти прямо на него. Произошло столкновение. «Гаук» врезался носом в бок «Олимпика»; удар был так силен, что «Гаук» проделал в борту «Олимпика» большую пробоину.

Когда этот странный случай рассматривался в морском суде, виновной стороной был признан капитан гиганта «Олимпик», так как, – гласило постановление суда, – он не отдал никаких распоряжений уступить дорогу идущему наперерез «Гауку».

Суд не усмотрел здесь, следовательно, ничего необычайного: простая нераспорядительность капитана, не больше. А между тем, имело место совершенно непредвиденное обстоятельство: случай взаимного притяжения судов на море.

Такие случаи не раз происходили, вероятно, и раньше при параллельном движении двух кораблей. Но пока не строили очень крупных судов, явление это не проявлялось с такой силой. Когда воды океанов стали бороздить «плавучие города», явление притяжения судов сделалось гораздо заметнее; с ним считаются командиры военных судов при маневрировании.

Многочисленные аварии мелких судов, проплывавших в соседстве с большими пассажирскими и военными судами, происходили, вероятно, по той же причине.

Чем же объясняется это притяжение? Когда два парохода плывут параллельно один другому, между их бортами получается как бы водяной канал.  В обыкновенном канале стенки неподвижны, а движется вода; здесь же наоборот: неподвижна вода, а движутся стенки. Но действие сил от этого нисколько не меняется: в узких местах подвижного канала вода слабее давит на стенки, нежели в пространстве вокруг пароходов. Другими словами, бока пароходов, обращенные друг к другу, испытывают со стороны воды меньшее давление, нежели наружные части судов. Что же должно произойти вследствие этого? Суда должны под напором наружной воды двинуться друг к другу, и естественно, что меньшее судно перемещается заметнее, между тем как более массивное остается почти неподвижным. Вот почему притяжение проявляется с особенной силой, когда большой корабль быстро проходит мимо маленького.

ПТИЦЫ НА ПРОВОДАХ

Все знают, как опасно для человека прикосновение к электрическим проводам трамвая или высоковольтной сети, когда они под напряжением. Такое прикосновение смертельно для человека и для крупных животных. Известно много случаев, когда лошадь или корову убивает током, если их задевает оборвавшийся провод.

Чем же объяснить то, что птицы спокойно и совершенно безнаказанно усаживаются на оголенные провода? Подобные картинки можно часто наблюдать в городах.

Чтобы понять причину подобных противоречий, примем во внимание следующее: тело сидящей на проводе птицы представляет собой как бы ответвление цепи, сопротивление которого по сравнению с другой ветвью (короткого участка между ногами птицы) огромно. Поэтому сила тока в этой ветви (в теле птицы) ничтожна и безвредна. Но если бы птица, сидя на проводе, коснулась столба крылом, хвостом или клювом – вообще каким-нибудь образом соединилась с землей, – она была бы мгновенно убита током, который устремился бы через ее тело в землю. Это нередко и наблюдается.

ЗАМОК С СЕКРЕТОМ

В одном советском учреждении был обнаружен несгораемый шкаф, сохранившийся дореволюционных лет. Отыскался и ключ к нему, но, чтобы им воспользоваться, надо было знать секрет замка: дверь шкафа открывалась лишь тогда, когда имевшиеся на двери 5 кружков с алфавитом на ободах (33 буквы) устанавливались на определенное слово. Так как никто этого слова не знал, то, чтобы не взламывать шкаф, решено было перепробовать все комбинации букв в кружках. На составление одной комбинации требуется три секунды. Можно ли надеяться, что шкаф откроют в течение 10 рабочих дней?

Подсчитаем, сколько всего буквенных комбинаций надо будет перепробовать.
Каждая из 33 букв первого кружка может сопоставляться с 33 буквами второго кружка. Значит, число комбинаций равно 33*33=332. Таким образом, число пятибуквенных комбинаций равно 335 или 39135393. Если на каждую комбинацию потратить по 3 секунды, то на это уйдет более 30000 часов или 4000 восьмичасовых рабочих дней. Для этого придется провести на работе более 10 лет.

ГАЛКИ И ПАЛКИ

Прилетели галки
Сели на палки. 
Если на каждой палке 
Сядет по одной галке, 
То для одной галки
Не хватит палки. 
Если же на каждой палке 
Сядет по две галки, 
То одна из палок 
Будет без галок. 
Сколько было галок? 
Сколько было палок?

Чтобы выполнить все условия, необходимо чтобы 4 галки садились на 3 палки.

ТОЛСТОЕ И ТОНКОЕ СТЕКЛО

Вы, вероятно, замечали, что стаканы для холодных напитков часто делаются с толстым дном. Понятно, для чего: такой стакан устойчив и его тудно опрокинуть. Почему же такая посуда не используется для горячих напитков, ведь очень важно, чтобы такой стакан не опрокидывался?

Стаканы с толстым дном не употребляются для горячих напитков потому, что стенки таких стаканов от горячей жидкости прогреваются и расширяются сильнее, чем толстое дно. Подобная посуда непрактична для чая: она растрескивается. Чем тоньше посуда и чем меньше разница в толщине стенок и дна, тем нагревание посуды равномернее и тем лучше она предохраняется от растрескивания.

ВЕЧНЫЙ ДВИГАТЕЛЬ

О “вечном двигателе”, “вечном движении” часто говорят и в прямом и в переносном смысле слова, но не все отдают себе отчет, что, собственно, надо подразумевать под этим выражением. Вечный двигатель – это такой воображаемый механизм, который безостановочно движет сам себя и, кроме того, совершает еще какую-нибудь полезную работу (например, поднимает груз). Такого механизма никто построить не смог, хотя попытки изобрести его делались уже давно. На рисунке вы можете видеть пример такого двигателя. 


Почему же расчет изобретателя не оправдывается?

Вот почему: хотя грузы на правой стороне всегда дальше от центра, но неизбежно такое положение, когда число этих грузов меньше, чем на левой. Взгляните на рисунок: справа всего 4 груза, слева же – 8. Оказывается, что вся система уравновешивается; естественно, что колесо вращаться не станет, а, сделав несколько качаний, остановится в таком положении.

ГДЕ ЛЕГЧЕ ВСЕГО?

Земной шар, на котором мы живем, вращается, и вследствие вращения все вещи на его поверхности становятся легче. Если килограммовую гирю перенести с полюса на экватор и здесь вновь взвесить на пружинных весах, то обнаружится нехватка в весе на 5 г. Разница невелика, конечно, но чем тяжелее вещь, тем нехватка крупнее. Паровоз, приехавший из Архангельска в Одессу, становится здесь легче на 60 кг – вес взрослого человека. А линейный корабль в 20 тыс. тонн, прибывший из Белого моря в Черное, теряет здесь в весе ни мало, ни много – 80 тонн; это вес хорошего паровоза!


Отчего так происходит? Оттого, что земной шар, вращаясь, стремится разбросать со своей поверхности все вещи. Земной шар и скинул бы их, но этому мешает то, что он притягивает все вещи к себе. Мы называем это притяжение «тяжестью». Скинуть вещи с Земли вращение не может, а уменьшить их вес может. Вот почему вещи становятся немного легче.

УЧИТЕЛЬ И УЧЕНИК

То, что описано далее, произошло, говорят, в Древней Греции. Учитель мудрости, софист Протагор, взялся обучить молодого Квантла всем приемам адвокатского искусства. Между учителем и учеником было заключено условие, по которому ученик обязался уплатить своему учителю вознаграждение тотчас же после того, как впервые обнаружатся его успехи, то есть после первой же выигранной им тяжбы.

Квантл прошел уже весь курс обучения. Протагор ожидает платы, но ученик не торопится выступить на суде. Как быть? Учитель, чтобы взыскать с ученика долг, подал на него в суд. Он рассуждал так: если дело будет истцом выиграно, деньги должны быть взысканы на основании судебного решения; если же тяжба будет истцом проиграна и, следовательно, выиграна ответчиком, то деньги опять-таки должны быть уплачены Квантлом по уговору — платить после первой же выигранной учеником тяжбы.

Однако ученик считал тяжбу Протагора, напротив, совершенно безнадежной. Он, как видно, действительно кое-что перенял у своего учителя и рассуждал так: если его присудят к уплате, то он не должен платить по уговору — ведь он проиграл свою первую тяжбу; если же дело будет решено в пользу ответчика, то и тогда он не обязан платить — на основании судебного решения.

Настал день суда. Судья был в большом затруднении. Однако после долгого размышления он нашел выход и вынес решение, которое, не нарушая условий уговора между учителем и учеником, давало учителю возможность получить свое вознаграждение.

Приговор был таков: учителю в иске отказать, но предоставить ему право возбудить дело вторично на новом основании, именно на том, что ученик выиграл свою первую тяжбу. Эта вторая тяжба должна быть решена уже бесспорно в пользу учителя. 

ВОДЯНОЕ КОЛЕСО

Колесо с лопастями устанавливается около дна реки так, что оно может легко вращаться. В какую сторону оно будет вращаться, если течение реки направлено справа налево?

Колесо будет вращаться против движения часовой стрелки. Скорость течения глубже лежащие слоев воды меньше, чем скорость слоев, лежащих выше, следовательно, давление на верхние лопасти будет больше, чем на нижние

Лучший алгоритм решения задач по программированию на Python

По-прежнему актуальны споры о фактической пользе таких веб-сайтов по Python-программированию, как Codewars или Leetcode, и их роли в развитии профессиональных навыков разработчиков. Но несмотря на это, многие все равно прибегают к их помощи для подготовки к собеседованиям, улучшения своего мастерства и/или просто забавы ради. Так или иначе, но этим ресурсам определенно найдется место в жизни любого программиста Python или специалиста по данным. 

В этой статье вам предлагается максимально эффективный подход к проработке вопросов по Python-программированию. Мы сформулируем относительно простую задачу, разработаем план с применением псевдокода и решим ее разными способами, начиная с самого простого. 

Формулировка задачи 

Задача: написать функцию, принимающую одно целочисленное значение и возвращающую сумму целых чисел от 0 до этого значения включительно. При использовании нецелочисленного значения функция должна возвращать 0. 

Итак, при передаче функции числа 5 она вернет сумму целых чисел от 0 до 5 или (0+1+2+3+4+5), которая равняется 15. Если передаваемое значение относится к другому типу, отличному от целого числа, такому как строка или число с плавающей точкой и т. д., функция вернет 0. 

Разработка плана 

На первом этапе необходимо решить задачу, используя псевдокод. Он позволит спланировать действия без оглядки на синтаксис. 

Попробуем что-нибудь в таком роде: 

def add(num):
    # если num целое число, то 
        # складываем числа от 0 до num и возвращаем сумму 
    
    # если num не является целым числом, то возвращаем 0

Sample inputs/outputs:

# input: 5, output: 15
# input: 'and', output: 0

Мы определили функцию add, принимающую значение num. Внутри нее в виде комментариев схематично прописываются шаги. Если передаваемое функции значение является целым числом, то мы складываем числа от 0 до этого значения включительно и затем возвращаем сумму. Если же оно не принадлежит к типу целых чисел  —  просто возвращаем 0. После этого прописываем несколько примеров конкретных входных данных для получения желаемого вывода. 

Распишем подробнее следующий шаг псевдокода: 

# складываем числа от 0 до num и возвращаем сумму

Это можно сделать несколькими способами. Как будет выглядеть псевдокод, если мы попробуем выполнить этот шаг с помощью цикла for?

def add(num):
    # если num целое число, то 

# создаем переменную sum и присваиваем ей значение 0 

# используем цикл for и перебираем числа от 0 до num 

# обновляем значение sum, добавляя к нему num 

# возвращаем sum

# если num не является целым числом, то возвращаем 0 

Теперь постараемся справиться с задачей на основе разработанного плана! 

Цикл for 

С помощью цикла for задача решается следующим образом: 

def add(num):
    # если num целое число, то  
    if type(num) == int:

# создаем переменную sum и присваиваем ей значение 0 
        sum = 0

# используем цикл for и перебираем числа от 0 до num 
        for x in range(num+1):

# обновляем значение sum 
            sum += x

# возвращаем sum 
        return sum

# если num не является целым числом, то возвращаем 0 else:
        return 0

Проанализируем этот код.  

Сначала с помощью функции type проверяем, является ли передаваемое значение num целым числом. 

if type(num) == int:

Если тип  —  целое число, создаем переменную sumи присваиваем ей значение 0. 

sum = 0

Затем с помощью цикла for и функции range перебираем целые числа от 0 до входного значения. Обратите внимание, что функция range создает одноименный итерируемый объект, который начинается с 0 (если не указано конкретное начальное значение) и переходит к числу, меньшему, чем завершающее цикл значение (поскольку оно единственно возможное). Следовательно, к этому значению нужно прибавить 1 (num+1), так как требуется сложить все целые числа от 0 до num включительно.

range(start, stop[, step])

Функция range создает итерируемый объект range, что позволяет перебирать в нем элементы в цикле for, прибавляя каждое число или xк переменнойsum.

for x in range(num+1):
sum += x

По завершению итераций функция возвращает sum.

return sum

И наконец, если передаваемое функции значение не является целым числом, возвращаем 0. 

else:
return 0

Вариант кода без комментариев. 

def add(num):
if type(num) == int:
sum = 0
for x in range(num+1):
sum += x
return sum
else:
        return 0

Протестировав функцию add, получаем правильные результаты. 

add(5) 
# 15

add('and')
# 0

Избранный способ отлично справляется с данной задачей по программированию. Код выполняет свое назначение, легко читаем и работает должным образом. Но, предприняв попытку найти другие варианты достижения поставленной цели, мы извлечем для себя больше пользы, поскольку освежим знания Python и прокачаем навыки решения проблемных ситуаций. Эти приемы могут быть более или менее пайтонические, но в любом случае это интересный и полезный опыт поиска разных подходов к одной и той же задаче. 

Итак, приступаем к новому способу решения. 

Функция

reduce 

Функция reduce принимает итерируемый объект и приводит его к единичному суммарному значению. У нее может быть 3 аргумента, два из которых являются обязательными: функция с 2 аргументами и итерируемый объект. 

Вместо цикла for воспользуемся reduce для нахождения суммы итерируемого объекта и решения поставленной задачи.

from functools import reducedef 

add(num):
if type(num) == int:
return reduce(lambda x,y: x+y, range(num+1))else:
        return 0

Лямбда-функция служит в качестве аргумента, а объект range используется как итерируемый объект. Reduce() приводит range к единичному суммарному значению sum, которое мы возвращаем.  

Тернарные операторы 

С помощью тернарных операторов можно еще больше сократить код, оформив инструкцию if/else в одну строку следующим образом:

x if C else y

С  —  это условие, которое проверяется в первую очередь. Если оно True, то вычисляется x, иначе  —  y, после чего возвращаются соответствующие значения. 

В коде это можно реализовать так: 

def add(num):
return reduce(lambda x,y: x+y, range(num+1)) if type(num) == int else 0

Благодаря всем этим изменениям нам удалось сократить код внутри функции до одной строки. Возможно, это не самый читаемый и пайтонический способ решения, но тем не менее он способствует развитию навыков программирования за счет обдумывания разных подходов к одной и той же проблеме. 

Далее разберем еще один способ.

Функция sum() 

Он состоит в применении встроенной функции Python  —  sum(). Она принимает итерируемый объект и возвращает сумму его элементов. Возможен вариант с передачей начального значения, если его первично требуется добавить к элементам.

sum(iterable, start)

Опробуем эту функцию в деле: 

def add(num):
return sum(range(num+1)) if type(num) == int else 0

Вероятно, это самый лучший способ справиться с задачей, поскольку код одновременно и максимально компактный, и легко читаемый. Кроме того, можно не сомневаться в его отличной производительности. 

Заключение 

В данной статье мы продемонстрировали, что решение задачи по Python разными способами улучшает навыки программирования за счет пополнения копилки знаний. Сформулировав задачу, мы рассмотрели этапы ее решения. Сначала наметили последовательность действий с помощью псевдокода, после чего реализовали задуманное разными способами, используя сначала цикл for, а затем функцию reduce. Применение тернарных операторов позволило еще больше подсократить код и при этом сохранить его читаемость. И наконец, благодаря встроенной функции sum наряду с тернарными операторами мы нашли наиболее лаконичный и пайтонический способ решения поставленной задачи. 

Читайте также:

Читайте нас в Telegram, VK и Яндекс.Дзен


Перевод статьи Luay Matalka: Best Way to Solve Python Coding Question

Примеры, задачи и загадки по ТРИЗ с ответами

Говоря о разработанном Г. С. Альтшуллером алгоритме, мы отмечаем не только стройность научной теории, но и её способность без перебора многочисленных вариантов приводить к сильному решению. В этом несомненное преимущество ТРИЗ, ведь она располагает большим количеством практических инструментов для решения творческих задач и производственных кейсов любой сложности.

Чтобы наглядно это продемонстрировать, мы собрали задачи и упражнения и объяснили их решение, применяя методику ТРИЗ. Несмотря на то, что теория предназначена для работы с техническими задачами, примеры подобраны так, что даже человек без специального образования сможет по достоинству оценить её эффективность.

На этой странице приведены некоторые задачи и упражнения, которые Г. Альтов (псевдоним, под которым Г. С. Альтшуллер писал научную фантастику) публиковал в газете «Пионерская правда» для юных изобретателей. И, как часто бывает в таких случаях, не каждый взрослый мог справиться с этими задачами, в чём вы сможете убедиться самостоятельно. Подобраны и кейсы – описания реальных ситуаций, когда возникшие противоречия были решены при помощи ТРИЗ. Они более сложные для решения, но позволяют завершить представление о теории, как практическом инструменте.

Содержание:

  1. Марсоход
  2. Вода в трубе
  3. Безопасный бассейн
  4. Лекарства для космонавтов
  5. Одуванчики
  6. Корм для рыбок
  7. Лёд на проводах
  8. Отзывы и комментарии

1

Марсоход

Условие. Во время научной экспедиции на Марс, космический корабль произвёл посадку в долине. Астронавты снарядили марсоход для лучшего изучения планеты, но как только покинули корабль, столкнулись с проблемой. Дело в том, что по поверхности было сложно передвигаться – этому мешали многочисленные холмы, ямы, большие камни. На первом же склоне колёсный вездеход с надувными шинами перевернулся на бок. С этой проблемой астронавты справились – они прицепили снизу груз, что усилило устойчивость машины, но стало причиной новой проблемы – груз задевал неровности, что усложняло движение. Итак, что нужно сделать, чтобы повысить проходимость марсохода? При этом у космонавтов нет возможности изменять его конструкцию.

Предполагаемое решение

Решение. Техническое противоречие сформулировано в условии задачи. Идеальный конечный результат – достичь абсолютной проходимости. При этом космонавты действуют в условиях Марса, у них нет возможности изменять конструкцию марсохода. Исходя из этого, ресурсом выступает груз. Не стоит также забывать и о законах развития технических систем, и следить за тем, чтобы изменение одной части не влияло на функционирование других элементов. Памятуя об этом, становится очевидным, что поднять груз в кабину или на крышу невозможно, так как произойдёт смещение центра тяжести и проблему решить не удастся. Спустить воздух из шин также нельзя – устойчивость немного повысится, но пострадает проходимость, усилится тряска.

Чтобы понять, как поступить с грузом, и получить сильное решение, нужно вспомнить, как мы обычно поступаем в условиях нехватки места? Стараемся разместить всё максимально компактно: объединить, сложить одно в другое. В ТРИЗ такой приём получил название «матрёшка». С её помощью задача про марсоход легко решаема: груз (металлические шарики, тяжёлая жидкость) нужно поместить внутрь шин. Этот способ имеет применение на практике, его предложил использовать японский изобретатель П. Шохо, для повышения устойчивости и проходимости кранов и погрузчиков.

2

Вода в трубе

Условие. Достаточно простая и известная задача. Есть металлическая труба, проложенная под землёй, по которой течёт вода. Для устранения неполадок в работе системы, часть трубы раскопали и столкнулись с необходимостью определить, в какую сторону движется вода. Попытки выяснить это путём простукивания, на слух, завершились неудачей. Вопрос: как понять в какую сторону течёт вода в трубе? Нарушать герметичность трубы (сверлить, резать) нельзя.

Предполагаемое решение

Решение. Эта задача решается очень просто. ТРИЗ предусматривает не только строгий алгоритм решения, но и чёткую проработку условий задания. Г. С. Альтшуллер всегда советовал перед началом работы попробовать сформулировать условия задачи другими словами. В нашем случае есть труба и вода, которая по ней движется. Воздействовать на трубу нельзя, значит нужно воздействовать на воду. Отсюда самое простое решение – нагреть трубу в одном месте, и по тому в какую сторону будет течь подогретая жидкость, нагревая и трубу, определить направление.

3

Безопасный бассейн

Условие. Это скорее не задача, а упражнение на способность находить эффективные творческие решения. Цель – предложить максимально безопасный бассейн для людей, которые не умеют плавать.

Предполагаемое решение

Решение. Используя метод системного анализа, можно найти ряд приемлемых решений, поскольку условия задачи не ограничивают нас в выборе средств. Так, можно построить бассейн уникальной конструкции (с небольшой глубиной, верёвочными ограждениями для каждой дорожки, выталкивающими фонтанами). Также можно снабжать пловцов вспомогательными плавсредствами, к примеру, спасательными жилетами. С точки зрения идеальности наиболее удачным вариантом можно считать предложение наполнить бассейн раствором концентрированной поваренной соли. В нём тело будет выталкиваться на поверхность без дополнительных усилий. Кстати, на эту тему существует загадка: «В каком море невозможно утонуть?». Поскольку физическую составляющую необходимого условия вы уже знаете, в качестве дополнения к упражнению подумайте над географической.

4

Лекарства для космонавтов

Условие. Не многим известно, что «морской болезнью» страдают не только моряки и путешествующие по морю, но и космонавты. Лекарства от данного недуга существуют, но есть оговорки по его применению в условиях космоса. Так, малые дозы нужно принимать часто, что неудобно, а большие – вредно. Как решить эту проблему?

Предполагаемое решение

Решение. Противоречие заключается в необходимости подачи в организм нужного количества лекарства без постоянного отвлечения на этот процесс космонавта. Для его решения был применён метод маленьких человечков. Лекарство представили как толпу людей, желающих попасть в нужное место. Очевидно, что для совершенствования этого процесса нужна определённая организация – очередь, постепенное продвижение. Эту идею реализовали в препарате, придя к выводу, что он должен усваиваться по частям, а не сразу. По этому принципу и были изобретены таблетки со скополамином, помогающие космонавтам справиться с «морской болезнью». Они имеют форму плоского диска, который, как пластырь, крепится за ухом. При этом активное вещество вследствие диффузии нормировано попадает в организм.

5

Одуванчики

Условие. Одуванчики имеют набор хромосом очень качественно близкий к человеческому. Как это можно использовать при контроле работы атомной электростанции?

Предполагаемое решение

Решение. Здесь, как видим, не совсем традиционная задача. Тем не менее, решается она достаточно просто, всё что нужно – применить один из законов развития ТС – закон согласования ритмики частей системы. И одуванчик, и человек – системы, а тот факт, что их хромосомы похожи, даёт возможность судить о достоверности результатов экспериментов на растениях и в случае с людьми. Но ритмика у одуванчика чаще (смена поколений раз в год), что за достаточно короткий период времени позволяет проследить генетические изменения экземпляров, растущих рядом с АЭС, и сделать соответствующие выводы и о влиянии на человека.

6

Корм для рыбок

Условие. У вас есть аквариум с рыбками, которые питаются циклопами. Вам нужно уехать на несколько дней и решить проблему с кормлением. Попросить помочь вы никого не можете. Запустить много циклопов за один раз нельзя – рыбки их съедят, и всё равно будут голодать. Как поступить в этом случае?

Предполагаемое решение

Решение. Бытовая ситуация, с которой (с возможными вариациями – кошки, попугаи и т.д. вместо рыбок) сталкивался каждый. По аналогии с предыдущей задачей становится очевидным, что приток корма в аквариум должен быть постоянным. Другими словами, в данном случае ИКР – независимое статическое поступление корма. Как это сделать? Знакомые с физикой, и в частности, с термодинамикой, должны найти решение достаточно быстро, используя описание мыслительного эксперимента Дж. Максвелла, известного как «Демон Максвелла». В переносе на наш случай решением может служить перегородка аквариума стенкой из органического стекла с небольшими отверстиями – достаточными для движения циклопов сквозь них и, в то же время, ограничивающие движения рыбок на «сторону циклопов».

7

Лёд на проводах

Условие. Напоследок сложная задача, с которой справляются очень немногие. В наших климатических условиях зимой существует опасность нарастания льда на проводах линии электропередач. Со временем образовавшаяся глыба может оборвать своей тяжестью провода, да ещё и повредить то, что находится на земле под ними. Какими методами бороться с обледенением?

Предполагаемое решение

Решение. Как и было анонсировано, решение данного кейса потребовало от изобретателей значительных усилий. Сначала высказывались предложения очищать провода внешними способами, например, с помощью человека. Но такие методы были откинуты в силу своей нецелесообразности. Появилась идея нагревать провода, пуская по них ток под сильным напряжением. Но это рождало новое противоречие, ведь в такое время пользователи не смогли бы пользоваться энергией. В данном случае сам ресурс (ток) был выбран правильно и учёные начали развивать идею нагрева проводов его посредством. Вскоре решение нашли – по всей линии на расстоянии в 5-6 м на провода надели специальные кольца из материала, обладающего магнитными свойствами – феррита. Под воздействием переменного тока магнит нагревался, что исключало обледенение.

Но и это решение не оказалось оптимальным. Дело в том, что провода продолжали греться и в тёплую пору, что было ненужным. Изобретение было усовершенствовано – кольца начали делать из магнита с точкой Кюри (П. Кюри первым заметил, что разные магниты сохраняют свои свойства до разных температур) равной нулю градусов. Такие магниты не грелись, когда температура воздуха поднималась выше 0°.

Больше интересных задач и кейсов по ТРИЗ ищите на официальном сайте фонда Г. С. Альтшуллера, на сайте «Креативный мир», в книге Н. и А. Нарбут «Учебник и сборник задач по ТРИЗ». Желаем вам успехов в практике решения изобретательских задач!

А также предлагаем сыграть в нашу игру на развитие нестандартного подхода в решении задач.

Далее вы найдете ссылки на полезные статьи и другие материалы, так или иначе относящиеся к теме.

Сергей КрутькоДмитрий Гераськин

Базовый алгоритм PHP — упражнения, практика, решение

Базовый алгоритм PHP [136 упражнений с решением]

[В нижней части страницы доступен редактор для написания и выполнения скриптов.]

1. Напишите программу на PHP для вычисления суммы двух заданных целых чисел. Если два значения совпадают, то возвращает утроенную их сумму. Перейдите в редактор
Sample Input
1, 2
3, 2
2, 2
Sample Output:
3
5
12
Нажмите на меня, чтобы увидеть пример решения

2. Напишите программу PHP, чтобы получить абсолютную разницу между n и 51. Если n больше 51, верните тройную абсолютную разницу. Перейдите в редактор
Пример ввода:
53
30
51
Пример вывода:
6
21
0
Нажмите на меня, чтобы увидеть пример решения

3. Напишите программу PHP для проверки двух заданных целых чисел и возврата true, если одно из них равно 30 или их сумма равна 30. Перейдите в редактор
Пример ввода:
30, 0
25, 5
20, 30
20, 25
Пример вывода:
bool(true)
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

4. Напишите программу PHP для проверки заданного целого числа и возврата true, если оно находится в пределах 10 из 100 или 200. Перейдите в редактор )
bool(false)
Нажмите на меня, чтобы увидеть пример решения

5. Напишите PHP-программу для создания новой строки, в которой перед заданной строкой добавляется ‘if’. Если строка уже начинается с «если», вернуть строку без изменений. Перейдите в редактор
Пример ввода:
“if else”
“else”
“if”
Пример вывода:
if else
if else
if
Нажмите на меня, чтобы увидеть пример решения

6. Напишите программу PHP для удаления символа в заданной позиции заданной строки. Данная позиция будет находиться в диапазоне от 0 до длины строки -1 включительно. Перейдите в редактор.
Пример ввода:
“Python”, 1
“Python”, o
“Python”, 4
Пример вывода:
Pthon
ython
Pythn
Нажмите на меня, чтобы увидеть пример решения

7. Напишите программу PHP, которая меняет местами первый и последний символы в заданной строке и возвращает новую строку. Перейдите в редактор
Пример ввода:
“abcd”
“a”
“xy”
Пример вывода:
dbca
a
yx
Нажмите на меня, чтобы увидеть пример решения

8. Напишите программу PHP для создания новой строки, состоящей из 4 копий двух передних символов данной строки. Если заданная длина строки меньше 2, верните исходную строку. Перейдите в редактор.
Пример ввода:
“C Sharp”
“JS”
“a”
Пример вывода:
C C C C
JSJSJSJS
a
Нажмите на меня, чтобы увидеть пример решения

9. Напишите программу PHP для создания новой строки с добавлением последнего символа в начале и в конце заданной строки длиной 1 или более.Перейдите в редактор.
Пример ввода:
“Красный”
“Зеленый”
“1”
Пример вывода:
dRedd
nGreenn
111
Нажмите на меня, чтобы увидеть пример решения

10. Напишите программу на PHP, чтобы проверить, является ли заданное положительное число кратным 3 или кратным 7. Перейдите в редактор )
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

11. Напишите программу PHP для создания новой строки, которая берет первые 3 символа заданной строки и возвращает строку с тремя добавленными символами спереди и сзади. Если заданная длина строки меньше 3, используйте любые имеющиеся символы. Перейдите в редактор
Пример ввода:
“Python”
“JS”
“Code”
Пример вывода:
PytPythonPyt
JSJSJS
CodCodeCod
Нажмите на меня, чтобы увидеть пример решения

12. Напишите программу на PHP, чтобы проверить, начинается ли данная строка с ‘C#’ или нет.Перейдите в редактор.
Пример ввода:
“PHP”
“C#”
“C++”
Пример вывода:
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

13. Напишите программу на PHP, чтобы проверить, меньше ли одна заданная температура 0, а другая больше 100. Откройте редактор
Пример ввода:
120, -1
-1, 120
2, 120
Пример вывода:
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

14. Напишите PHP-программу для проверки двух заданных целых чисел, находится ли одно из них в диапазоне от 100 до 200 включительно. Перейдите в редактор.

15. Напишите программу на PHP, чтобы проверить, находятся ли три заданных целых числа в диапазоне от 20 до 50 включительно. Возвращает true, если 1 или более из них находятся в указанном диапазоне, в противном случае false. Перейдите в редактор. )
bool(false)
Нажмите на меня, чтобы увидеть пример решения

16. Напишите программу на PHP, чтобы проверить, находятся ли два заданных целых числа в диапазоне от 20 до 50 включительно. Возвращает true, если 1 или другое находится в указанном диапазоне, в противном случае — false. Перейдите в редактор. мне посмотреть образец решения

17. Напишите программу PHP, чтобы проверить, появляется ли строка ‘yt’ в индексе 1 в данной строке. Если он появляется, верните строку без «yt», в противном случае верните исходную строку. Перейдите в редактор
Пример ввода:
“Python”
“ytade”
“jsues”
Пример вывода:
Phon
ytade
jsues
Нажмите на меня, чтобы увидеть пример решения

18. Напишите программу на PHP для проверки наибольшего числа среди трех заданных целых чисел. Перейдите в редактор. образец раствора

19. Напишите программу на PHP, чтобы проверить, какое число ближе всего к значению 100 среди двух заданных целых чисел. Возвращает 0, если два числа равны. Перейдите в редактор
Образец ввода:
78, 95
95, 95
99, 70
Образец вывода:
95
0
99
Нажмите на меня, чтобы увидеть образец решения

20. Напишите программу на PHP, чтобы проверить, находятся ли два заданных целых числа в диапазоне от 40 до 50 включительно или оба они находятся в диапазоне от 50 до 60 включительно. Перейдите в редактор. мне посмотреть образец решения

21. Напишите PHP-программу, которая находит большее значение из двух положительных целых чисел в диапазоне от 20 до 30 включительно или возвращает 0, если ни одно из них не входит в этот диапазон. Перейдите в редактор.

22. Напишите программу на PHP, чтобы проверить, содержит ли заданная строка от 2 до 4 символов ‘z’. Перейдите в редактор. мне посмотреть образец решения

23. Напишите программу на PHP, чтобы проверить, имеют ли два заданных неотрицательных целых числа одинаковую последнюю цифру. Перейдите в редактор. мне посмотреть образец решения

24. Напишите программу PHP для преобразования последних 3 символов заданной строки в верхний регистр. Если длина строки меньше 3, то все символы в верхнем регистре.Перейдите в редактор
Пример ввода:
“Python”
“Javascript”
“js”
“PHP”
Пример вывода:
PytHON
JavascrIPT
JS
PHP
Нажмите на меня, чтобы увидеть пример решения

25. Напишите программу PHP для создания новой строки, которая представляет собой n (неотрицательное целое число) копий заданной строки. Перейдите в редактор
Пример ввода:
“JS”, 2
“JS”, 3
“JS”, 1
Пример вывода:
JSJS
JSJSJS
JS
Нажмите на меня, чтобы увидеть пример решения

26. Напишите программу PHP для создания новой строки, состоящей из n (целых неотрицательных) копий первых 3 символов заданной строки. Если длина заданной строки меньше 3, вернуть n копий строки. Перейдите в редактор.
Пример ввода:
“Python”, 2
“Python”, 3
“JS”, 3
Пример вывода:
PytPyt
PytPytPyt
JSJSJS
Нажмите на меня, чтобы увидеть пример решения

27. Напишите программу PHP для подсчета строки «аа» в заданной строке и предположите, что «ааа» содержит два «аа».Перейдите в редактор
Пример ввода:
“bbaaccaag”
“jjkiaaasew”
“JSaaakoiaa”
Пример вывода:
2
2
3
Нажмите на меня, чтобы увидеть пример решения

28. Напишите программу на PHP, чтобы проверить, следует ли за первой буквой «а» в заданной строке сразу же другая буква «а». Перейдите в редактор.
Пример ввода:
“caabb”
“babaaba”
“aaaaa”
Пример вывода:
bool(true)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

29. Напишите программу PHP для создания новой строки, состоящей из всех остальных символов, начиная с первого из заданной строки. Перейдите в редактор.
Пример ввода:
“Python”
“PHP”
“JS”
Пример вывода:
Pto
PP
J
Нажмите на меня, чтобы увидеть пример решения

30. Напишите программу PHP для создания строки типа “aababcabcd” из заданной строки “abcd”. Перейдите в редактор.
Пример ввода:
“abcd”
“abc”
“a”
Пример вывода:
aababcabcd
aababc
a
Нажмите на меня, чтобы увидеть пример решения

31. Напишите программу PHP для подсчета подстроки длиной 2 в заданной строке, а также в качестве последних 2 символов строки. Не учитывать конечную подстроку. Перейдите в редактор
Пример ввода:
“abcdsab”
“abcdabab”
“abcabdabab”
“abcabd”
Пример вывода:
1
2
3
0
Нажмите на меня, чтобы увидеть пример решения

32. Напишите программу PHP для проверки наличия заданного числа в данном массиве целых чисел. Перейти в редактор
Пример ввода:
{1,2,9,3}, 3
{1,2,2,3}, 2
{1,2,2,3}, 9
Пример вывода:
bool (true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

33. Напишите программу PHP для проверки, равен ли один из первых 4 элементов в массиве целых чисел заданному элементу. Перейти в редактор
Образец Ввод:
{1,2,9,3}, 3
{1,2,3,4,5,6}, 2
{1,2,2,3}, 9
Образец Вывод:
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

34. Напишите программу на PHP, чтобы проверить, встречается ли где-нибудь последовательность чисел 1, 2, 3 в заданном массиве целых чисел. Перейдите в редактор
Пример ввода:
{1,1,2,3,1}
{1,1,2,4,1}
{1,1,2,1,2,3}
Пример вывода:
bool(true)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

35. Напишите программу PHP для сравнения двух заданных строк и возврата количества позиций, в которых они содержат подстроку одинаковой длины 2. Перейдите в редактор.
Пример ввода:
“abcdefgh”, “abijsklm”
“abcde”, “osuefrcd”
“pqrstuvwx”, “pqkdiewx”
Пример вывода:
1
1
2
Нажмите на меня, чтобы увидеть пример решения

36. Напишите программу PHP для создания новой строки символов с индексами 0,1,4,5,8,9 … из заданной строки. Перейдите в редактор.
Пример ввода:
“Python”
“JavaScript”
“HTML”
Пример вывода:
Pyon
JaScpt
HT
Нажмите на меня, чтобы увидеть пример решения

37. Напишите программу PHP для подсчета количества двух пятерок, стоящих рядом друг с другом в массиве целых чисел. Также подсчитайте ситуацию, когда вторая 5 на самом деле является 6. Перейти к редактору
Образец ввода:
{ 5, 5, 2 }
{ 5, 5, 2, 5, 5 }
{ 5, 6, 2, 9 }
Пример вывода:
1
2
1
Нажмите на меня, чтобы увидеть пример решения

38. Напишите программу на PHP, чтобы проверить, присутствует ли тройка в массиве целых чисел или нет. Если значение появляется три раза подряд в массиве, оно называется тройкой.Перейти в редактор
Пример ввода:
{ 1, 1, 2, 2, 1 }
{ 1, 1, 2, 1, 2, 3 }
{ 1, 1, 1, 2, 2, 2, 1 }
Пример вывода:
bool(false)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

39. Напишите программу на PHP для вычисления суммы двух заданных целых чисел. Если сумма находится в диапазоне от 10 до 20 включительно, вернуть 30. Перейти к редактору. 30
Нажмите на меня, чтобы увидеть образец решения

40. Напишите программу PHP, которая принимает два целых числа и возвращает истину, если одно из них равно 5 или их сумма или разность равны 5. Перейдите в редактор bool(true)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

41. Напишите программу PHP для проверки, является ли заданное неотрицательное число кратным 13 или кратным 13 на единицу. Перейдите в редактор
Пример ввода:
13
14
27
41
Пример вывода:
bool(true)
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

42. Напишите программу PHP для проверки, является ли заданное неотрицательное заданное число кратным 3 или 7, но не тому и другому одновременно. Перейдите в редактор.
Пример ввода:
3
7
21
Пример вывода:
int(1)
int(1)
int(0)
Нажмите на меня, чтобы увидеть пример решения

43. Напишите программу на PHP, чтобы проверить, находится ли заданное число в пределах 2 от кратного 10. Перейдите в редактор bool(false)
bool(true)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

44. Напишите программу PHP для вычисления суммы двух заданных целых чисел. Если одно из заданных целых чисел находится в диапазоне от 10 до 20 включительно, вернуть 18. Перейти к редактору 18
18
241
Нажмите на меня, чтобы увидеть образец решения

45. Напишите программу PHP, чтобы проверить, начинается ли данная строка с “F” или заканчивается на “B”. Если строка начинается с «F», вернуть «Fizz» и вернуть «Buzz», если она заканчивается на «B». Если строка начинается с «F» и закончить на «B», вернуть «FizzBuzz».В других случаях возвращайте исходную строку. Перейдите в редактор
Образец ввода:
“FizzBuzz”
“Fizz”
“Buzz”
“Founder”
Образец вывода:
Fizz
Fizz
Buzz
Fizz
Нажмите на меня, чтобы увидеть пример решения

46. Напишите программу на PHP, чтобы проверить, можно ли сложить два целых числа, чтобы получить третье целое число из трех заданных целых чисел. Перейдите в редактор.
Пример ввода:
1, 2, 3
4, 5, 6
-1, 1, 0
Пример вывода:
bool(true)
bool(false)
bool(true)
Нажмите меня, чтобы см. образец решения

47. Напишите программу PHP, чтобы проверить, больше ли y, чем x, и z больше, чем y из трех заданных целых чисел x, y, z. Перейдите в редактор.
Пример ввода:
1, 2, 3
4, 5, 6
-1, 1, 0
Пример вывода:
bool(true)
bool(true)
bool(false)
Нажмите меня, чтобы см. образец решения

48. Напишите программу на PHP, чтобы проверить, находятся ли три заданных числа в строгом возрастающем порядке, например 4 7 15 или 45, 56, 67, но не 4 , 5, 8 или 6, 6, 8. Однако, если четвертый параметр истинен, допускается равенство, например 6, 6, 8 или 7, 7, 7.Перейти в редактор
Пример ввода:
1, 2, 3, ложь
1, 2, 3, правда
10, 2, 30, ложь
10, 10, 30, правда
Пример вывода:
bool(true)
bool(true)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

49. Напишите программу на PHP, чтобы проверить, имеют ли два или более заданных неотрицательных целых числа одинаковую крайнюю правую цифру. Перейдите в редактор. образец раствора

50. Напишите программу PHP, которая проверяет три заданных целых числа и возвращает значение true, если одно из них на 20 или более меньше другого. Перейдите в редактор. образец раствора

51. Напишите PHP-программу для нахождения большего из двух заданных целых чисел. Однако, если два целых числа имеют одинаковый остаток при делении на 7, то возвращается меньшее целое число.Если два целых числа совпадают, верните 0. Перейдите в редактор
.

52. Напишите программу на PHP для проверки двух заданных целых чисел, каждое из которых находится в диапазоне 10..99. Возвратите true, если цифра присутствует в обоих числах, например, 3 в 13 и 33. Перейдите к редактору (false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

53. Напишите программу PHP для вычисления суммы двух заданных неотрицательных целых чисел x и y, если сумма состоит из того же количества цифр, что и x. Если в сумме больше цифр, чем x, верните x без y. Перейдите в редактор
Образец ввода:
4, 5
7, 4
10, 10
Образец вывода:
9
7
20
Нажмите на меня, чтобы увидеть образец решения

54. Напишите программу на PHP для вычисления суммы трех заданных целых чисел. Если два значения совпадают, верните третье значение.Перейти в редактор. образец раствора

55. Напишите программу на PHP для вычисления суммы трех целых чисел. Если одно из значений равно 13, то оно не считается и его право на сумму. Перейти в редактор. образец раствора

56. Напишите программу PHP для вычисления суммы трех заданных целых чисел. Однако, если любое из значений находится в диапазоне от 10 до 20 включительно, то это значение считается равным 0, кроме 13 и 17. Перейти к редактору
Образец ввода:
4, 5, 7
7, 4, 12
10 , 13, 12
17, 12, 18
Пример вывода:
16
11
13
17
Нажмите на меня, чтобы увидеть пример решения

57. Напишите программу на PHP, которая проверяет два заданных целых числа и возвращает значение, ближайшее к 13, не переходя при этом.Возвращает 0, если оба числа переходят. Перейдите в редактор.

58. Напишите программу на PHP, которая проверяет три заданных целых числа (маленькое, среднее и большое) и возвращает true, если разница между малым и средним и разница между средним и большим одинаковы. Перейдите в редактор. см. образец решения

59. Напишите программу PHP для создания новой строки, используя две заданные строки s1, s2, формат новой строки будет s1s2s2s1. Перейдите в редактор
Пример ввода:
“Привет”, “Привет”
“whats”, “app”
Пример вывода:
HiHelloHelloHi
whatsappappwhats
Нажмите на меня, чтобы увидеть пример решения

60. Напишите программу PHP для вставки заданной строки в середину другой заданной строки длины 4. Перейдите в редактор
Пример ввода:
“[[]]”,”Hello”
“(()) “, “Привет”
Пример вывода:
[[Привет]]
((Привет))
Нажмите на меня, чтобы увидеть пример решения

61. Напишите программу PHP для создания новой строки, используя три копии последних двух символов заданной строки длиной не менее двух. Перейдите в редактор
Образец ввода:
“Hello”
“Привет”
Образец вывода:
lololo
HiHiHi
Нажмите на меня, чтобы увидеть пример решения

62. Напишите программу PHP для создания новой строки, используя первые два символа данной строки. Если длина строки меньше 2, верните исходную строку. Перейдите в редактор
Образец ввода:
“Привет”
“Привет”
“H”
” ”
Образец вывода:
He
Привет
H
Нажмите на меня, чтобы увидеть образец решения

63. Напишите программу PHP для создания новой строки из первой половины заданной строки четной длины. Перейти к редактору
Образец ввода:
“Hello”
“Привет”
Образец вывода:
He
H
Нажмите на меня, чтобы увидеть образец решения

64. Напишите программу PHP для создания новой строки без первого и последнего символов данной строки длиной не менее двух. Перейдите в редактор
Образец ввода:
“Hello”
“Привет”
“Python”
Образец вывода:
ell

ytho
Нажмите на меня, чтобы увидеть образец решения

65. Напишите программу PHP для создания новой строки из двух заданных строк, одна короче, а другая длиннее. Формат новой строки будет следующим: длинная строка + короткая строка + длинная строка. Перейдите в редактор
Пример ввода:
“Hello”, “Hi”
“JS”, “Python”
Пример вывода:
HelloHiHello
PythonJSPython
Нажмите на меня, чтобы увидеть пример решения

66. Напишите PHP-программу для объединения двух заданных строк длиной не менее 1 после удаления их первого символа.Перейти к редактору
Пример ввода:
“Hello”, “Hi”
“JS”, “Python”
Пример вывода:
elloi
Sython
Нажмите на меня, чтобы увидеть пример решения

67. Напишите программу PHP для перемещения первых двух символов в конец заданной строки длиной не менее двух. Перейти к редактору
Пример ввода:
“Hello”
“JS”
Пример вывода:
lloHe
JS
Нажмите на меня, чтобы увидеть пример решения

68. Напишите программу PHP для перемещения последних двух символов в начало заданной строки длиной не менее двух.Перейдите в редактор
Пример ввода:
“Hello”
“JS”
Пример вывода:
loHel
JS
Нажмите на меня, чтобы увидеть пример решения

69. Напишите программу PHP для создания новой строки без первого и последнего символа данной строки любой длины. Перейдите в редактор
Пример ввода:
“Hello”
“JS”

Пример вывода:
ell
Нажмите на меня, чтобы увидеть пример решения

70. Напишите программу PHP для создания новой строки, используя два средних символа заданной строки четной длины (не менее 2). Перейти к редактору
Образец ввода:
“Ад”
“JS”
Образец вывода:
el
JS
Нажмите на меня, чтобы увидеть образец решения

71. Напишите программу на PHP, чтобы проверить, заканчивается ли данная строка на “on”. Перейдите в редактор.
Пример ввода:
“Hello”
“Python”
“on”
“o”
Пример вывода:
строка(2) “lo”
строка(2) “on”
строка(2) ” on”
string(1) “o”
Нажмите на меня, чтобы увидеть пример решения

72. Напишите программу PHP для создания новой строки, используя первые и последние n символов заданной строки длиной не менее n.Перейдите в редактор.
Пример ввода:
“Hello”, 1
“Python”, 2
“on”, 1
“o”, 1
Пример вывода:
Ho
Pyon
on
oo
Нажмите на меня, чтобы увидеть образец раствора

73. Напишите программу PHP для создания новой строки длины 2, начиная с заданного индекса данной строки. Перейдите в редактор.
Пример ввода:
“Hello”, 1
“Python”, 2
“on”, 1
Пример вывода:
el
th
on
Нажмите на меня, чтобы увидеть пример решения

74. Напишите программу PHP для создания новой строки, состоящей из 3 символов из середины заданной строки, по крайней мере, из 3. Перейдите в редактор
yth
abc
Нажмите на меня, чтобы увидеть образец решения

75. Напишите программу PHP для создания новой строки длины 2, используя первые два символа заданной строки. Если заданная длина строки меньше 2, используйте «#» в качестве отсутствующих символов. Перейдите в редактор
Образец ввода:
“Hello”
“Python”
“a”
“”
Образец вывода:
He
Py
a#
#
Нажмите на меня, чтобы увидеть пример решения

76. Напишите программу PHP для создания новой строки, берущей первый символ из заданной строки и последний символ из другой заданной строки. Если длина любой заданной строки равна 0, используйте «#» в качестве отсутствующего символа. Перейти в редактор
Пример ввода:
“Hello”, “Hi”
“Python”, “PHP”
“JS”, “JS”
“Csharp”, “”
Пример вывода:
Hi
PP
JS
C#
Нажмите на меня, чтобы увидеть пример решения

77. Напишите программу PHP для объединения двух заданных строк (строчные буквы).Если в новой строке есть какие-либо двойные символы, пропустите один символ. Перейдите в редактор
Пример ввода:
“abc”, “cat”
“python”, “php”
“php”, “php”
Пример вывода:
abcat
PythonPHP
phpphp
Нажмите на меня, чтобы увидеть пример решения

78. Напишите программу PHP для создания новой строки из заданной строки после замены двух последних символов. Перейдите в редактор
Образец ввода:
“Hello”
“Python”
“PHP”
“JS”
“C”
Образец вывода:
Heol
Pythno
PPH
SJ
C
Нажмите на меня, чтобы увидеть пример решения

79. Напишите программу PHP, чтобы проверить, начинается ли данная строка с ‘abc’ или ‘xyz’. Если строка начинается с «abc» или «xyz», вернуть «abc» или «xyz», в противном случае вернуть пустую строку. Перейдите в редактор.

80. Напишите программу на PHP, чтобы проверить, совпадают ли первые два символа и последние два символа заданной строки.Перейдите в редактор
Пример ввода:
“abab”
“abcdef”
“xyzsderxy”
Пример вывода:
bool(true)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

81. Напишите программу PHP для объединения двух заданных строк. Если заданные строки имеют разную длину, удалите символы из более длинной строки. Перейдите в редактор.
Пример ввода:
“abc”, “abcd”
“Python”, “Python”
“JS”, “Python”
Пример вывода:
abcbcd
PythonPython
JSon
Нажмите на меня, чтобы увидеть пример решения

82. Напишите программу PHP для создания новой строки, используя 3 копии первых 2 символов заданной строки. Если длина данной строки меньше 2, используйте всю строку. Перейдите в редактор
Пример ввода:
“abc”
“Python”
“J”
Пример вывода:
ababab
PyPyPy
JJJ
Нажмите на меня, чтобы увидеть пример решения

83. Напишите программу PHP для создания новой строки из заданной строки. Если два символа заданной строки от начала и до конца одинаковы, верните данную строку без первых двух символов, в противном случае верните исходную строку.Перейдите в редактор
Пример ввода:
“abcab”
“Python”
Пример вывода:
cab
Python
Нажмите на меня, чтобы увидеть пример решения

84. Напишите программу PHP для создания новой строки из заданной строки без первого и последнего символов, если первый или последний символы равны ‘a’, в противном случае возвращает исходную заданную строку. Перейдите в редактор.
Пример ввода:
“abcab”
“python”
“abcda”
“jython”
Пример вывода:
bcab
Python
bcd
jython
Нажмите на меня, чтобы увидеть пример решения

85. Напишите программу PHP для создания новой строки из заданной строки. Если первым или первыми двумя символами является «а», верните строку без этих символов «а», в противном случае верните исходную заданную строку. Перейдите в редактор
Пример ввода:
“abcab”
“python”
“aacda”
“jython”
Пример вывода:
bcab
Python
cda
jython
Нажмите на меня, чтобы увидеть пример решения

86. Напишите программу на PHP для проверки данного массива целых чисел длиной 1 или более и возврата true, если 10 появляется в качестве первого или последнего элемента в данном массиве.Перейти в редактор. Вывод:
bool(true)
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

87. Напишите программу на PHP для проверки данного массива целых чисел длиной 1 или более и возврата true, если первый и последний элементы в данном массиве равны. Перейдите в редактор. true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

88. Напишите PHP-программу для проверки двух заданных массивов целых чисел длиной 1 или более и возврата true, если они имеют одинаковый первый элемент или одинаковый последний элемент. Перейти в редактор
Образец ввода:
{[10, 20, 40, 50], [10, 20, 40, 50]}
{[10, 20, 40, 10], [10, 20, 40, 5 ]}
{[12, 24, 35, 55], [1, 20, 40, 5]}
Пример вывода:
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть образец раствор

89. Напишите программу на PHP для вычисления суммы элементов заданного массива целых чисел.Перейдите в редактор.
Пример ввода:
{ 10, 20, 30, 40, 50 }
{ 10, 20, -30, -40, 50 }
Пример вывода:
150
10
Нажмите на меня, чтобы увидеть пример решения

90. Напишите программу на PHP, которая поворачивает элементы заданного массива целых чисел (длиной 4) влево и возвращает новый массив. Перейдите в редактор
Пример ввода:
{ 10, 20, -30, -40 }
Пример вывода:
Повернутый массив: 20, -30, -40,10
Нажмите на меня, чтобы увидеть пример решения

91. Напишите PHP-программу для обращения заданного массива целых чисел длиной 5. Перейдите в редактор
Пример ввода:
{ 10, 20, -30, -40, 50 } ,-30,20,10
Нажмите на меня, чтобы увидеть пример решения

92. Напишите программу PHP, чтобы найти максимальный элемент между первым и последним элементом в заданном массиве целых чисел (длина 4), замените все элементы максимальным элементом. Перейдите в редактор
Пример ввода:
{ 10, 20, -30, -40 }
Пример вывода:
Новый массив с максимальными значениями: 20,20,20,20
Нажмите на меня, чтобы увидеть пример решения

93. Напишите программу PHP для создания нового массива, содержащего средние элементы из двух заданных массивов целых чисел, каждый длиной 5. Перейдите в редактор
Пример ввода:
{ 10, 20, -30, -40, 30 }, { 10, 20, 30, 40, 30 }
Пример вывода:
Новый массив: -30, 30
Нажмите на меня, чтобы увидеть пример решения

94. Напишите программу PHP для создания нового массива, содержащего первый и последний элементы заданного массива целых чисел длиной 1 или более. Перейдите в редактор
Пример ввода:
{ 10, 20, -30, -40, 30 }
Пример вывода:
Новый массив: 10,30
Нажмите на меня, чтобы увидеть пример решения

95. Напишите программу на PHP, чтобы проверить, содержит ли заданный массив целых чисел длины 2 числа 15 или 20. Перейдите в редактор Вывод:
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

96. Напишите программу PHP, чтобы проверить, не содержит ли заданный массив целых чисел длины 2 числа 15 или 20. Перейдите в редактор
Пример ввода:
{ 12, 20 }
{ 14, 15 }
{ 11, 21 }
Пример вывода:
bool(false)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

97. Напишите PHP-программу для проверки заданного массива целых чисел и возврата true, если массив дважды содержит 10 или 20. Длина массива будет 0, 1 или 2. Перейдите в редактор. (false)
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

98. Напишите программу PHP для проверки заданного массива целых чисел длиной 3 и создания нового массива.Если в заданном массиве сразу за цифрой 7 следует цифра 5, установите для 7 значение 1. Перейдите в редактор. ,1
Нажмите на меня, чтобы увидеть пример решения

99. Напишите программу на PHP для вычисления суммы двух заданных массивов целых чисел длиной 3 и поиска массива с наибольшей суммой. Перейдите в редактор
Пример ввода:
{ 10, 20, -30 }, { 10, 20, 30 }
Пример вывода:
Новый массив с максимальными значениями: 10,20,30
Нажмите на меня, чтобы увидеть пример решения

100. Напишите программу PHP для создания массива, содержащего два средних элемента из заданного массива целых чисел четной длины. Перейдите в редактор
Пример ввода:
{ 1, 5, 7, 9, 11, 13 }
Пример вывода:
Новый массив: 7 9
Нажмите на меня, чтобы увидеть пример решения

101. Напишите программу PHP для создания нового массива из двух массивов целых чисел, длина каждого из которых равна 3. Перейдите в редактор
Пример ввода:
{ 10, 20, 30 }, { 40, 50, 60 }
Пример вывода:
Новый массив: 10,20,30,40,50,60
Нажмите на меня, чтобы увидеть пример решения

102. Напишите программу PHP для создания нового массива, заменяющего местами первый и последний элементы заданного массива целых чисел, и длина будет не меньше 1. Перейдите в редактор
Пример ввода:
{ 1, 5, 7, 9, 11, 13 }
Пример вывода:
Новый массив после замены первого и последнего элементов: 13,5,7,9,11,1
Нажмите на меня, чтобы увидеть пример решения

103. Напишите программу PHP для создания нового массива длиной 3 из заданного массива (длиной не менее 3), используя элементы из середины массива.Перейдите в редактор
Пример ввода:
{ 1, 5, 7, 9, 11, 13 }
Пример вывода:
Новый массив: 7,9,11
Нажмите на меня, чтобы увидеть пример решения

104. Напишите программу на PHP, чтобы найти наибольшее значение из первого, последнего и среднего элементов заданного массива целых чисел нечетной длины (не менее 1). Перейти в редактор
Образец ввода:
{1}
{1,2,9}
{1,2,9,3,3}
{1,2,3,4,5,6,7}
{ 1,2,2,3,7,8,9,10,6,5,4}
Пример вывода:
1
9
9
7
8
Нажмите на меня, чтобы увидеть пример решения

105. Напишите программу PHP для создания нового массива, берущего первые два элемента из заданного массива. Если длина заданного массива меньше 2, верните заданный массив. Перейдите в редактор
Пример ввода:
{ 1, 5, 7, 9, 11, 13 }
Пример вывода:
Новый массив: 1,5
Нажмите на меня, чтобы увидеть пример решения

106. Напишите программу на PHP для подсчета четного числа элементов в заданном массиве целых чисел. Перейдите в редактор
Пример ввода:
{ 1, 5, 7, 9, 10, 12 }
Пример вывода:
Количество четных элементов: 2
Нажмите на меня, чтобы увидеть пример решения

107. Напишите программу PHP для вычисления разницы между наибольшим и наименьшим значениями в заданном массиве целых чисел длиной один или несколько. Перейдите в редактор.
Пример ввода:
{ 1, 5, 7, 9, 10, 12 }
Пример вывода:
Разница между наибольшим и наименьшим значениями: 11
Нажмите на меня, чтобы увидеть пример решения

108. Напишите программу на PHP для вычисления суммы значений в заданном массиве целых чисел, кроме числа 17. Верните 0, если в данном массиве нет целых чисел.Перейдите в редактор
Пример ввода:
{ 1, 5, 7, 9, 10, 17 }
Пример вывода:
Сумма значений в массиве целых чисел, кроме числа 17: 32
Нажмите на меня, чтобы увидеть пример решения

109. Напишите программу на PHP для вычисления суммы чисел в заданном массиве, за исключением тех чисел, которые начинаются с 5, за которой следует хотя бы одна 6. Верните 0, если в данном массиве нет целых чисел. Перейти в редактор
Образец ввода:
{ 1, 5, 7, 9, 10, 17 }
{ 1, 5, 6, 9, 10, 17 }
{ 5, 6, 7, 9, 10, 17, 1 }
{ 11, 9, 10, 17, 5, 6 }
Пример вывода:
Сумма чисел указанного массива, за исключением тех чисел, которые начинаются с 5, за которыми следует хотя бы единица 6:
49
Сумма чисел указанного массива указанный массив, за исключением тех чисел, которые начинаются с 5, за которыми следует хотя бы один 6:
37
Сумма чисел указанного массива, кроме тех чисел, которые начинаются с 5, за которыми следует хотя бы один 6:
44 ​​
Сумма чисел указанного массива, кроме тех числа, начинающиеся с 5, за которыми следует не менее одного 6:
47
Нажмите на меня, чтобы увидеть пример решения

110. Напишите программу PHP, чтобы проверить, содержит ли данный массив целых чисел 5 рядом с 5 где-нибудь. Перейти в редактор
Пример ввода:
{ 1, 5, 6, 9, 10, 17 }
{ 1, 5, 5, 9, 10, 17 }
{ 1, 5, 5, 9, 10, 17, 5, 5 }
Пример вывода:
bool(false)
bool(true)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

111. Напишите программу на PHP, чтобы проверить, содержит ли заданный массив целых чисел числа 5 и 7. Перейти в редактор
Пример ввода:
{ 1, 5, 6, 9, 10, 17 }
{ 1, 4, 7, 9, 10, 17 }
{ 1, 1, 2, 9, 10, 17}
Пример вывода:
bool(true)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

112. Напишите программу на PHP, чтобы проверить, равна ли сумма всех 5′ в массиве ровно 15 в заданном массиве целых чисел. Перейти в редактор
Пример ввода:
{ 1, 5, 6, 9, 10, 17 }
{ 1, 5, 5, 5, 10, 17 }
{ 1, 1, 5, 5, 5, 5}
Пример вывода:
bool(false)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

113. Напишите программу на PHP, чтобы проверить, превышает ли количество троек количество пятерок. Перейти в редактор
Образец ввода:
{ 1, 5, 6, 9, 3, 3 }
{ 1, 5, 5, 5, 10, 17 }
{ 1, 3, 3, 5, 5, 5}
Пример вывода:
bool(true)
bool(false)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

114. Напишите программу PHP, чтобы проверить, содержит ли данный массив целых чисел 3 или 5. Перейдите в редактор
Пример ввода:
{ 5, 5, 5, 5, 5 }
{ 3, 3, 3, 3 }
{ 3, 3, 3, 5, 5, 5}
{ 1, 6, 8, 10}
Пример вывода:
bool(true)
bool(true)
bool(true)
bool(false)
Click мне посмотреть образец решения

115. Напишите программу на PHP, чтобы проверить, не содержит ли данный массив целых чисел 3 или 5. Перейдите в редактор
Пример ввода:
{ 5, 5, 5, 5, 5 }
{ 3, 3, 3, 3 }
{ 3, 3, 3, 5, 5, 5}
{ 1, 6, 8, 10}
Пример вывода:
bool(true)
bool(true)
bool(false)
bool( true)
Нажмите на меня, чтобы увидеть пример решения

116. Напишите программу PHP, чтобы проверить, содержит ли массив целых чисел 3 рядом с 3 или 5 рядом с 5, или и то, и другое. Перейти в редактор
Образец ввода:
{ 5, 5, 5, 5, 5 }
{ 1, 2, 3, 4 }
{ 3, 3, 5, 5, 5, 5}
{ 1, 5, 5, 7, 8, 10}
Пример вывода:
bool(true)
bool(false)
bool(true)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

117. Напишите программу на PHP для проверки данного массива целых чисел и возврата true, если данный массив содержит две пятерки рядом друг с другом или две пятерки, разделенные одним элементом.Перейти в редактор
Образец ввода:
{ 5, 5, 1, 5, 5 }
{ 1, 2, 3, 4 }
{ 3, 3, 5, 5, 5, 5}
{ 1, 5, 5, 7, 8, 10}
Пример вывода:
bool(true)
bool(false)
bool(true)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

118. Напишите программу на PHP для проверки данного массива целых чисел и возврата true, если где-то позже в данном массиве есть 3 с 5. Перейти в редактор
Образец ввода:
{ 3, 5, 1, 3, 7 }
{ 1, 2, 3, 4 }
{ 3, 3, 5, 5, 5, 5}
{ 2, 5, 5, 7, 8, 10}
Пример вывода:
bool(true)
bool(false)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

119. Напишите программу PHP для проверки данного массива целых чисел и возврата true, если данный массив содержит либо 2 четных, либо 2 нечетных значения, расположенные рядом друг с другом. Перейти в редактор
Образец ввода:
{ 3, 5, 1, 3, 7 }
{ 1, 2, 3, 4 }
{ 3, 3, 5, 5, 5, 5}
{ 2, 4, 5, 6}
Пример вывода:
bool(true)
bool(false)
bool(true)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

120. Напишите программу на PHP, которая проверяет заданный массив целых чисел и возвращает true, если значение 5 встречается 5 раз и нет ни одного числа 5 рядом друг с другом.Перейти в редактор
Образец ввода:
{ 3, 5, 1, 5, 3, 5, 7, 5, 1, 5 }
{ 3, 5, 5, 5, 5, 5, 5}
{ 3, 5, 2, 5, 4, 5, 7, 5, 8, 5}
{ 2, 4, 5, 5, 5, 5}
Пример вывода:
bool(true)
bool(false)
bool(true) )
bool(false)
Нажмите на меня, чтобы увидеть пример решения

121. Напишите программу PHP для проверки данного массива целых чисел и возврата true, если каждые 5, которые появляются в данном массиве, находятся рядом с другим 5. Перейти к редактору
Пример ввода:
{ 3, 5, 5, 3, 7 }
{ 3, 5, 5, 4, 1, 5, 7}
{ 3, 5, 5, 5, 5, 5}
{ 2, 4, 5, 5, 6, 7, 5}
Пример вывода:
bool(true)
bool(false)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

122. Напишите программу PHP для проверки заданного массива целых чисел и возврата true, если указанное количество одинаковых элементов появляется в начале и в конце заданного массива. Перейти в редактор
Пример ввода:
{ 3, 7, 5, 5, 3, 7 }, 2
{ 3, 7, 5, 5, 3, 7 }, 3
{ 3, 7, 5, 5, 3, 7, 5 }, 3
Пример вывода:
bool(true)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

123. Напишите программу на PHP, которая проверяет заданный массив целых чисел и возвращает true, если массив содержит три возрастающих соседних числа. Перейти в редактор
Пример ввода:
{ 1, 2, 3, 5, 3, 7 }
{ 3, 7, 5, 5, 3, 7 }
{ 3, 7, 5, 5, 6, 7, 5 }
Пример вывода:
bool(true)
bool(false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

124. Напишите PHP-программу для сдвига элемента влево и возврата нового массива. Перейдите в редактор
Пример ввода:
{ 10, 20, -30, -40, 50 }
Пример вывода:
Новый массив: 20,-30,-40,50,10
Нажмите на меня, чтобы увидеть пример решения

125. Напишите программу PHP для создания нового массива, берущего элементы перед значением элемента 5 из заданного массива целых чисел. Перейдите в редактор
Пример ввода:
{ 1, 2, 3, 5, 7 }
Пример вывода:
Новый массив: 1,2,3
Нажмите на меня, чтобы увидеть пример решения

126. Напишите программу PHP для создания нового массива, берущего элементы после значения элемента 5 из заданного массива целых чисел. Перейдите в редактор
Пример ввода:
{ 1, 2, 3, 5, 7, 9, 11 }
Пример вывода:
Новый массив: 7,9,11
Нажмите на меня, чтобы увидеть пример решения

127. Напишите программу PHP для создания нового массива из заданного массива целых чисел, сдвигая все нули влево. Перейдите в редактор
Пример ввода:
{ 1, 2, 0, 3, 5, 7, 0, 9, 11 }
Пример вывода:
Новый массив: 0,0,1,3,5,7,2, 9,11
Нажмите на меня, чтобы увидеть образец решения

128. Напишите программу PHP для создания нового массива после замены всех значений 5 на 0, сдвигая все нули вправо. Перейдите в редактор
Пример ввода:
{ 1, 2, 0, 3, 5, 7, 0, 9, 11 }
Пример вывода:
Новый массив: 1,2,3,7,9,11,0, 0,0
Нажмите на меня, чтобы увидеть образец решения

129. Напишите программу PHP для создания нового массива из заданного массива целых чисел, сдвигая все четные числа перед всеми нечетными числами. Перейдите в редактор
Пример ввода:
{ 1, 2, 5, 3, 5, 4, 6, 9, 11 }
Пример вывода:
Новый массив: 2,4,6,3,5,1,5, 9,11
Нажмите на меня, чтобы увидеть образец решения

130. Напишите программу на PHP, чтобы проверить, равно или больше значение каждого элемента, чем значение предыдущего элемента данного массива целых чисел. Перейти в редактор
Образец ввода:
{ 5, 5, 1, 5, 5 }
{ 1, 2, 3, 4 }
{ 3, 3, 5, 5, 5, 5}
{ 1, 5, 5, 7, 8, 10}
Пример вывода:
bool(false)
bool(true)
bool(true)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

131. Напишите программу PHP для проверки данного массива (длина будет не менее 2) целых чисел и возврата true, если есть два значения 15, 15 рядом друг с другом. Перейти в редактор
Пример ввода:
{ 5, 5, 1, 15, 15 }
{ 15, 2, 3, 4, 15 }
{ 3, 3, 15, 15, 5, 5}
{ 1, 5, 15, 7, 8, 15}
Пример вывода:
bool(true)
bool(false)
bool(true)
bool(false)
Нажмите на меня, чтобы увидеть пример решения

132. Напишите программу на PHP, чтобы найти большее среднее значение между первой и второй половиной заданного массива целых чисел и минимальной длины не менее 2.Предположим, что вторая половина начинается с индекса (длина массива)/2. Перейдите в редактор
Образец ввода:
{ 1, 2, 3, 4, 6, 8 }
{ 15, 2, 3, 4, 15, 11 }
Образец вывода:
6
10
Нажмите на меня, чтобы увидеть образец раствора

133. Напишите программу на PHP для подсчета количества строк заданной длины в заданном массиве строк. Перейти в редактор
Пример ввода:
{“a”, “b”, “bb”, “c”, “ccc” }, 1
Пример вывода:
Номер массива:
3
Нажмите на меня, чтобы увидеть образец раствор

134. Напишите программу PHP для создания нового массива, используя первые n строк из заданного массива строк. (n>=1 и перейдите в редактор
Пример ввода:
{“a”, “b”, “bb”, “c”, “ccc” }, 3
Пример вывода:
ab bb
Нажмите на меня, чтобы увидеть образец раствора

135. Напишите программу PHP для проверки положительного целого числа и возврата true, если оно содержит число 2. Перейдите в редактор false)
bool(true)
Нажмите на меня, чтобы увидеть пример решения

136. Напишите программу PHP для создания нового массива заданной длины, используя нечетные числа из заданного массива положительных целых чисел. Перейдите в редактор
Пример ввода:
{1,2,3,5,7,9,10},3
Пример вывода:
Новый массив: 1,3,5
Нажмите на меня, чтобы увидеть пример решения

Редактор кода PHP:

Еще не все!

Не отправляйте здесь решение вышеуказанных упражнений, если вы хотите внести свой вклад, перейдите на соответствующую страницу упражнений.

PHP-программы — javatpoint

PHP-программы часто задают на собеседовании. Эти программы можно запросить из основ, операторов управления, массива, строки, oops, обработки файлов и т. д. Давайте посмотрим на список лучших программ PHP.


Напишите программу PHP для вывода суммы цифр.

Ввод: 23

Вывод: 5

Ввод: 624

Вывод: 12


Ввод: 23

Вывод: нечетное число

Ввод: 12

Вывод: четное число


Напишите программу PHP для проверки простого числа.

Ввод: 17

Вывод: не простое число

Ввод: 57

Вывод: простое число


Напишите программу PHP для печати таблицы чисел.

Ввод: 2

Вывод: 2 4 6 8 10 12 14 16 18 20

Ввод: 5

Выход: 5 10 15 20 25 30 35 40 45 50


Напишите программу PHP для вывода факториала числа.

Ввод: 5

Вывод: 120

Ввод: 6

Вывод: 720


Напишите PHP-программу для проверки числа Армстронга.

Ввод: 371

Выход: Армстронг

Ввод: 342

Выход: не армстронг


Напишите программу PHP для проверки номера палиндрома.

Ввод: 121

Вывод: не число палиндрома

Ввод: 113

Вывод: номер палиндрома


Напишите программу PHP для печати рядов Фибоначчи без использования рекурсии и с использованием рекурсии.

Ввод: 10

Вывод: 0 1 1 2 3 5 8 13 21 34


Напишите PHP-программу для обращения заданного числа.

Ввод: 234

Вывод: 432


Напишите PHP-программу для обращения заданной строки.

Ввод: вместе с

Вывод: тима


Напишите программу PHP для замены двух чисел с использованием и без использования третьей переменной.

Ввод: а=5 б=10

Вывод: а=10 б=5


Напишите программу PHP для сложения двух чисел.

Первый ввод: 10

Второй ввод: 20

Вывод: 30


Напишите программу PHP для вычитания двух чисел.

Первый ввод: 50

Второй ввод: 10

Вывод: 40


Напишите программу PHP для нахождения площади треугольника.

Базовый ввод: 10

Высота Ввод: 15

Вывод: 75


Напишите PHP-программу для нахождения площади прямоугольника.

Длина Ввод: 10

Ввод ширины: 20

Вывод: 200


Напишите программу на PHP, чтобы определить, является ли данный год високосным или нет.

Ввод: 2000

Вывод: Високосный год

Ввод: 2001

Вывод: Невисокосный год


Напишите PHP-программу для печати алфавитного треугольника.

Вывод:

 А
    АВА
   АВСБА
  ABCDCBA
 АБКДЕДКБА
 

Напишите PHP-программу для печати алфавитного треугольника.

Вывод:

 А
    АВА
   АВСБА
  ABCDCBA
 АБКДЕДКБА
 

Напишите PHP-программу для вывода числового треугольника.

Вывод:

 введите диапазон = 6
      1
     121
    12321
   1234321
  123454321
 12345654321
 

Напишите PHP-программу для печати звездчатого треугольника.

Вывод:

Вывод:

Вывод:

Вывод:

Вывод:

PHP: Что может PHP?

Что-нибудь. PHP в основном ориентирован на серверные сценарии, так что вы можете делать все, что может делать любая другая программа CGI, например как сбор данных формы, создание динамического содержимого страницы или отправлять и получать файлы cookie. Но PHP может сделать гораздо больше.

Существует три основных области, в которых используются PHP-скрипты.

  • Скрипты на стороне сервера. Это самый традиционный и основное целевое поле для PHP. Вам нужны три вещи чтобы это работало: синтаксический анализатор PHP (CGI или сервер модуль), веб-сервер и веб-браузер.Тебе следует запустите веб-сервер с подключенной установкой PHP. Вы можете получить доступ к выходным данным программы PHP с помощью веб-браузера, просмотр страницы PHP через сервер. Все это может запустите на своей домашней машине, если вы просто экспериментируете с программированием на PHP. См. инструкции по установке раздел для получения дополнительной информации.
  • Скрипт командной строки. Вы можете сделать PHP-скрипт чтобы запустить его без какого-либо сервера или браузера.Вам нужен только парсер PHP, чтобы использовать его таким образом. Этот тип использования идеально подходит для скриптов регулярно выполняется с помощью cron (в *nix или Linux) или планировщика заданий (в окна). Эти сценарии также можно использовать для простого текста. задачи обработки. Смотрите раздел о Использование командной строки PHP Чтобы получить больше информации.
  • Написание настольных приложений. PHP, вероятно, не самый лучший язык для создания рабочего стола приложение с графическим пользовательским интерфейсом, но если вы очень хорошо знаете PHP и хотели бы использовать некоторые расширенные функции PHP в ваших клиентских приложениях вы также можете использовать PHP-GTK для написания таких программ. Вы тоже иметь возможность писать кроссплатформенные приложения это способ. PHP-GTK — это расширение PHP, недоступное в основная раздача. Если ты заинтересован в PHP-GTK посетите » его собственный сайт.

PHP можно использовать во всех основных операционных системах, включая Linux, множество вариантов Unix (включая HP-UX, Solaris и OpenBSD), Microsoft Windows, macOS, ОС RISC и, возможно, другие. Сегодня PHP также поддерживает большинство веб-серверов.Этот включает Apache, IIS и многие другие. И это включает любые веб-сервер, который может использовать бинарный файл FastCGI PHP, например lighttpd и нгинкс. PHP работает либо как модуль, либо как процессор CGI.

Так что с PHP у вас есть свобода выбора операционной системы и веб-сервера. Кроме того, у вас также есть выбор использования процедурного программирования или объектно-ориентированного программирование (ООП) или их смесь.

С PHP вы не ограничены выводом HTML.Возможности PHP включает вывод изображений, PDF-файлов и даже Flash-роликов (используя libswf и Ming), созданные на лету. Вы также можете легко выводить любой текст, такой как XHTML и любой другой файл XML. PHP может автоматически генерировать эти файлы и сохранять их в файле системы, вместо того, чтобы распечатать его, формируя на стороне сервера кеш для вашего динамического контента.

Одной из самых сильных и важных особенностей PHP является его поддержка большого количества баз данных.Написать веб-страницу с поддержкой базы данных невероятно просто, используя один из специальные расширения базы данных (например, для mysql), или используя уровень абстракции, такой как PDO, или подключитесь к любой базе данных, поддерживающей стандарт Open Database Connection, через Расширение ODBC. Другие базы данных могут использовать cURL или сокеты, как CouchDB.

PHP также поддерживает общение с другими службами с использованием протоколов. такие как LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (в Windows) и бесчисленное множество других.Вы также можете открывать необработанные сетевые сокеты и взаимодействовать по любому другому протоколу. PHP поддерживает WDDX. сложный обмен данными между практически всеми веб-программами языки. Говоря о взаимосвязи, PHP поддерживает создание экземпляров объектов Java и их прозрачное использование как PHP-объекты.

PHP имеет полезные функции обработки текста, который включает Perl-совместимые регулярные выражения (PCRE), и множество расширений и инструментов для анализа и доступа к XML-документам.PHP стандартизирует все расширения XML на прочной основе libxml2, и расширяет набор функций, добавляя SimpleXML, Поддержка XMLReader и XMLWriter.

И существует множество других интересных расширений, которые подразделяются на обе категории. по алфавиту и по категориям. И есть дополнительные расширения PECL, которые могут быть задокументированы, а могут и не быть задокументированы. в самом руководстве по PHP, например » XDebug.

Как видите, этой страницы недостаточно, чтобы перечислить все функции и преимущества, которые может предложить PHP.Читайте в разделы об установке PHP и увидеть функцию справочная часть для объяснения расширений упоминается здесь.

вызовов PHP-кодирования онлайн | Geektastic

Проблемы с кодированием на PHP

Испытания по написанию кода на PHP — это уникальный инструмент для оценки навыков и компетенций разработчика. Наши задачи по PHP-коду рассчитаны на то, чтобы их можно было выполнить в разумные сроки и предоставить разработчику приятную PHP-задачу.

То, как мы разрабатываем наши задачи, означает, что конечный результат не является бинарным «пройдено/не пройдено», а скорее обеспечивает детальную обратную связь, которая обеспечивает подлинное понимание предоставленного решения.

Это возможно, потому что каждое решение задачи по программированию на PHP, которое мы получаем, проверяется одним из наших экспертов в этой области. Каждый из наших обзоров кода сопровождается построчными комментариями, а также общим резюме и рейтингом. Такой подход означает, что разработчик всегда получает полезную обратную связь, а также предоставляет потенциальному работодателю ценную информацию, которая поможет ему принять решение о найме.

 

 

Хотите технически оценить навыки PHP ваших кандидатов?

ПОПРОБУЙТЕ БЕСПЛАТНО

Что это значит для PHP?

PHP — это язык с долгой историей, и его разработка привела к созданию языка, который можно использовать по-разному. К каждой проблеме можно подойти по-разному, и каждое решение может быть уместным в разных сценариях. Мы работаем исходя из того, что часто не существует единственно правильного подхода к той или иной проблеме.Любой подход, который пытается выполнить требования задачи кодирования, получит полную и правильную обратную связь, которая может помочь понять некоторые преимущества и недостатки принятого подхода.

Что можно оценить с помощью теста PHP coding?

Мы разрабатываем широкий спектр задач по кодированию PHP, они были тщательно разработаны для оценки ряда различных аспектов разработки PHP. Какой из этих элементов считается важным, будет варьироваться от человека к человеку и от организации к организации.

Некоторые важные элементы, для оценки которых может быть разработана задача PHP-кодирования, включают:

  • Принципы объектно-ориентированного проектирования
  • Понимание встроенных функций PHP
  • Различия между интерфейсом командной строки и веб-приложениями
  • Использование правильного экранирования output
  • Использование надлежащей проверки входных данных
  • Понимание как возможностей, так и ограничений массивов PHP

Наш подход к оценке можно использовать, чтобы получить представление обо всех этих и многих других аспектах.Наш подход не ограничивается простой проверкой вывода, но также может предоставить полезную качественную обратную связь о решении.

Наши кодовые задания можно адаптировать и расширить, чтобы сосредоточиться на важных для вас областях. Понимание PHP нашими экспертами позволяет нам точно оценить решение, предоставляя обратную связь, которая важна для вас и вашей команды.

Хотите проверить свои навыки работы с PHP и пройти проверку одним из наших экспертов?

ПОПРОБУЙТЕ БЕСПЛАТНО

Библиотеки и фреймворки

Мы не можем говорить об измерении способностей разработчика, не коснувшись также огромного количества библиотек и фреймворков, доступных для использования с PHP.Двумя самыми популярными фреймворками являются WordPress и Laravel. Типичный автоматизированный подход к задачам кодирования не сможет с пользой оценить использование этих или других подобных фреймворков.

Интерес по регионам

Наши испытания кода могут стать базовым проектом, подходящим для оценки знакомства разработчика с различными фреймворками. Например, мы можем включить базовое приложение Laravel, поручив разработчику создание контроллеров и представлений, соответствующих критериям сложности.Наш человеческий подход к оценке позволяет нам убедиться, что разработчик не только выполнил поставленную задачу, но и выполнил ее требуемым образом.

Многие современные PHP-разработки повторно используют существующие библиотеки кода, и эти зависимости обычно управляются через Composer. Наши задачи по коду могут поставляться с исходными файлами Composer, которые могут включать библиотеки, важные для вашей компании. Оценки также могут быть разработаны, чтобы помочь кандидату продемонстрировать свою способность работать с библиотеками, с которыми он может быть не знаком сразу.

Почему стоит выбрать нас для решения ваших задач по кодированию PHP?

Мы здесь, чтобы помочь, независимо от того, являетесь ли вы разработчиком, желающим продемонстрировать свои навыки, или работодателем, который ищет своего следующего проверенного разработчика. В Geektastic мы гордимся экспертными знаниями наших оценщиков и их способностью четко и профессионально сообщать о результатах.

У нас есть задачи по программированию, подходящие для всех уровней и тщательно настроенные, чтобы гарантировать, что они всегда будут приносить полезную обратную связь.

 

Хотите проверить свои навыки работы с PHP и принять участие в рецензируемом испытании кода Geektastic?

Зарегистрируйтесь сейчас

Хотите получить лицензию на вызов кода PHP для анализа навыков PHP ваших кандидатов?

Зарегистрируйтесь сейчас

 

Хотите узнать больше о домашних испытаниях кода и о том, что делает задачу хорошей?

Перейдите со страницы, на которой мы говорим о проблемах с кодом, которые можно взять домой. Простой дизайн .Это новое издание было обновлено Дэвидом, чтобы включить изменения в PHP по сравнению со вторым изданием и предложить новейшие методы — классическое руководство, модернизированное для методов PHP 21-го века, инноваций и лучших практик.

Вы хотите сделать свои веб-сайты более динамичными, добавив форму обратной связи, создав приватную область, куда участники могут загружать изображения, размеры которых автоматически изменяются, или, возможно, сохраняя весь ваш контент в базе данных. Проблема в том, что вы не программист, и мысль о написании кода вызывает у вас мурашки по коже.Или, может быть, вы немного пробовали PHP и MySQL, но вы не можете пройти дальше детских шагов. Если это относится к вам, то вы только что нашли нужную книгу. PHP и база данных MySQL заслуженно являются самой популярной комбинацией для создания динамических веб-сайтов. Они бесплатны, просты в использовании и предоставляются многими хостинговыми компаниями в своих стандартных пакетах.

К сожалению, большинство книг по PHP либо предполагают, что вы уже являетесь экспертом, либо заставляют выполнять бесконечные упражнения, не имеющие практической ценности.Напротив, эта книга дает вам реальную ценность сразу же благодаря серии практических примеров, которые вы можете включить непосредственно в свои сайты, оптимизируя производительность и добавляя такие функции, как загрузка файлов, формы обратной связи по электронной почте, галереи изображений, системы управления контентом и многое другое. . Каждое решение создается с учетом не только функциональности, но и визуального оформления.

Но эта книга не просто содержит набор готовых сценариев: каждое решение PHP основывается на том, что уже было сделано ранее, быстро и безболезненно обучая вас основам PHP и проектирования баз данных.К концу книги вы обретете уверенность, чтобы начать писать свои собственные сценарии или — если вы предпочитаете оставить эту задачу другим — адаптировать существующие сценарии к своим собственным требованиям. С самого начала вам показали, как легко защитить свои сайты, применяя методы безопасного кодирования.

10 задач по коду PHP для начинающих

Вы можете только заполнить свою голову таким количеством теории кодирования и знаний из курсов и книг, прежде чем вам нужно будет проверить эти навыки.Если вы PHP-разработчик, один из способов отработать свои навыки — создать веб-сайт или веб-приложение. Но есть гораздо более простой и менее затратный по времени способ попрактиковаться в PHP-кодировании.

Проблемы с кодом — это небольшие задачи разработки, которые можно решить с помощью кода. Решая задачи с кодом, вы будете развивать имеющиеся навыки и приобретать новые, которые помогут вам эффективно решать более сложные проекты. И, учитывая, что сегодня более 75% веб-сайтов используют PHP, добавить этот востребованный навык в свой набор навыков не составит труда.

В этой статье мы дадим вам 10 задач по кодированию PHP для начинающих, которые станут отличным началом для отработки ваших навыков работы с PHP. Хотя эти задачи подходят для начинающих, вы можете освежить свои знания PHP, прежде чем начать. Ознакомьтесь с Изучайте PHP, чтобы быстро освежить свои знания, а затем перейдите к задачам, приведенным ниже.

1. Создайте страницу приветствия, мир

Для этого задания создайте страницу PHP со стандартным HTML, включая теги заголовка, заголовка и тела.Поскольку одной из особенностей PHP является возможность встраивать его в HTML, это даст вам некоторую практику в этом. Внутри тега body создайте тег h2, содержащий раздел PHP, выводящий «Hello World».

2. Создание переменных

В этом задании создайте еще одну страницу PHP со стандартным HTML. На этот раз вы захотите напечатать «У Мэри был маленький ягненок» в элементе HTML по вашему выбору. Но сначала вы должны создать переменную для хранения «Мэри» и переменную для хранения «ягненка» и использовать эти переменные для создания строки, которую вы распечатываете.

3. Изменение типов данных

Здесь вы создадите одну переменную, а затем присвоите ей разные значения. Затем вы напечатаете эти значения в браузере с помощью оператора эха. Это утверждение может включать только слова «Значение равно a». Печатайте каждое выражение с новой строки, используя разрывы строк. Ваш результат должен выглядеть следующим образом:

Значение представляет собой строку. Значение двойное. Значение является логическим. Значение представляет собой целое число. Значение равно NULL.

4.Использование if, else и elseif

Для этого задания напишите сценарий, который получает текущий месяц, а затем выводит сезон, используя if, else и elseif. Вам не нужно беспокоиться о точной дате смены сезона. Считайте июнь, июль и август за лето, а сентябрь, октябрь и ноябрь за осень. Считайте декабрь, январь и февраль за зиму, а март, апрель и май за весну.

5. Создайте таблицу умножения, используя вложенные циклы for

В этом задании вы распечатаете в браузере таблицу умножения для всех чисел до 12 включительно.Для этого используйте два цикла for, один из которых вложен в другой. Убедитесь, что вы используете HTML-теги table, td и tr для создания корректной HTML-таблицы.

6. Ответ на форму PHP

В этом задании вы создадите два файла PHP. Первый файл будет содержать форму с одним полем формы для ввода пользователем своего имени и кнопкой для отправки формы. Эта форма должна использовать метод POST и отправлять результаты формы во второй файл PHP.

Второй файл должен обрабатывать данные формы и печатать приветствие, которое выглядит так, если пользователь ввел “Боб” в качестве имени: “Привет, вас зовут Боб”.

7. Зацикливание массива

В этом задании сначала создайте массив, содержащий следующие названия городов:

Токио, Мехико, Нью-Йорк, Мумбаи, Сеул, Шанхай, Лагос, Буэнос-Айрес, Каир , London

Вывести значения в браузер, разделенные запятыми, используя цикл для перебора массива. Отсортируйте массив, а затем снова распечатайте значения в браузере, используя цикл. Затем добавьте в массив эти названия городов:

Лос-Анджелес, Калькутта, Осака, Пекин

Затем снова отсортируйте массив и напечатайте значения, используя цикл for.

8. Напишите функцию, которая принимает аргументы

Эта задача включает в себя создание функции на PHP, которая принимает два числовых аргумента. Эти аргументы представляют высоту и ширину прямоугольника в дюймах.

В функции вычислить площадь прямоугольника и вернуть предложение. Если вы передадите параметры функции 4 и 5, она должна вернуть: «Этот прямоугольник имеет высоту 4 дюйма и ширину 5 дюймов, а его площадь составляет 20 квадратных дюймов».

9.Форма и функция

В этом задании вы будете использовать функцию, созданную в предыдущем задании. Создайте два файла PHP. У одного будет форма с двумя полями для ширины и высоты и кнопкой отправки. Форма должна использовать метод POST и отправляться во второй файл PHP, который выводит HTML и результат функции в теге h2.

10. Получить информацию об окружении

Для этой задачи напишите сценарий на PHP, который выводит версию PHP и значения конфигурации, IP-адрес клиента и используемый браузер.

Улучшите свои навыки работы с PHP

Если вам понравились эти задачи по кодированию PHP, вы можете получить доступ к другим в приложении Codecademy Go. Нужно освежиться, прежде чем погрузиться в новые испытания? Не забудьте ознакомиться с нашим курсом «Изучение PHP», который отлично подходит для начинающих и продолжающих PHP-разработчиков.

Начните изучать этот востребованный навык вместе с нами и зарегистрируйтесь бесплатно сегодня.


Курсы и учебные пособия по PHP | Codecademy

PHP — это язык сценариев общего назначения, широко используемый в качестве серверного языка для создания динамических веб-страниц.Хотя его репутация неоднозначна, PHP по-прежнему чрезвычайно популярен и используется более чем на 75% всех веб-сайтов, на которых известен серверный язык программирования.

PHP для начинающих. Часть 1: весь используемый код полностью объяснен. Я настоятельно рекомендую вам посмотреть первые 4 раздела

, прежде чем присоединиться к .

  • Каждая линейка используемого кода объясняется

  • полная поддержка со всеми вопросами, ответили быстро

  • 7 часа видеоконтента

  • студентов последовательно говорят, сколько они любят этот курс из-за его уникальный метод доставки и вызовы , которые позволяют вам сразу же использовать свои новые навыки . Присоединяйтесь к более чем 6000 других студентов, которые успешно научились программировать на PHP, записавшись на этот курс.

    ИСТОРИЯ УСПЕХОВ СТУДЕНТА: От класса D до A-

    “Здравствуйте и спасибо, профессор Патрик! Я хочу поблагодарить вас за всю вашу поддержку и помощь. Я получил пятерку за курс Я учился [в университете]. Некоторые люди сказали бы, что это было плохо. Но они понятия не имеют, как сильно я боролся. И с вашим курсом и с помощью моя оценка поднялась с «D» до данной оценки [A- ].Я все еще собираюсь использовать ваш курс, чтобы держать свой ум в курсе информации. Что я считаю лучшим, поэтому я не забуду, как правильно выполнять и выполнять информацию. Профессор Патрик, я действительно не могу отблагодарить вас в достаточной мере!” Эдриенн Стигер

    Этот курс PHP для начинающих знакомит вас с PHP с помощью тщательно продуманных примеров и полностью разработанных задач. Обучение на практике – это то, чему посвящен этот курс. Вы познакомитесь с реальным миром Примеры использования PHP-кода .

    Вы видели другие курсы, в которых используются сложные термины или которые перескакивают шаги и заставляют вас думать «почему это только что произошло?» Вы не найдете этого в этом курсе, потому что каждая строка кода объясняется и очень легко следовать .

    Этот курс был разработан для новичков в программировании или для тех, кто приобрел вредные привычки и хочет освежить свои навыки кодирования.

    В вашем распоряжении, чтобы помочь и направить вас, известный учитель , удостоенный национальной награды , который обучил тысячи студентов за свою карьеру более 25 лет.

    Основные моменты этого курса включают в себя:

      • полный код из каждого примера и мини-задачи поделились с вами онлайн

      • тщательно обработанные вызовы и полные решения с полными объяснения каждую строки

      • Демонстрация общих кодировщиков окружающей среды

      • десятки реальных примеров реального мира с более добавленными на регулярной основе

      • преподаватель, который заботится о его учениках

      • Регулярные обновления и новые вызовы

      Каждая строка кода подробно объясняется , чтобы вы могли очень быстро перейти от абсолютного новичка к компетентному программисту .

      Я настолько уверен, что вам понравится курс, что я предоставил БЕСПЛАТНЫЙ доступ к первым 4 разделам . Если вам понравился мой стиль и вы хотите продолжить обучение, ПРИСОЕДИНЯЙТЕСЬ СЕЙЧАС и пройдите оставшуюся часть курса.

      ОТЗЫВ СТУДЕНТОВ: “Удивительно”

      ОТЗЫВ СТУДЕНТОВ: “Я записался на многие курсы здесь, на Udemy, и, честно говоря, я отказался от большинства из них, потому что они для меня как развлечение. Я классифицирую их как развлечение, потому что знание без действия — развлечение.Этот курс совершенно другой, поскольку по мере того, как вы учитесь, вам приходится действовать в соответствии с этими знаниями. Благодаря прохождению этого курса я стал лучше программировать, раньше мне было трудно перенести свою логику из реального мира в компьютерный код. Я ни в коем случае не говорю, что теперь я эксперт, но мой мыслительный процесс был скорректирован благодаря эффективному методу обучения мистера Морроу”. раздел php моего курса начальной подготовки по программированию, на который я в настоящее время зачислен), и инструктор все очень хорошо объяснил. Темп был в самый раз (для меня). Я уже купил его курс php, часть 2, так что мне не терпится начать его! Отличный курс, содержание и инструктор!”

      ОТЗЫВ СТУДЕНТОВ: “Мне понравился этот курс, и я многому научился, а задачи заставили меня включить свой мозг. Отличная инструкция. Спасибо, Патрик. Теперь пора перейти к следующему курсу по PHP и MySQL.”

      ОТЗЫВ СТУДЕНТОВ: “Отличный курс для начинающих с практическими и реалистичными задачами.Очень эффективно”. объяснил. Поощряется передовой опыт и в качестве содержания преподаются действительно качественные базовые знания. Что меня действительно впечатлило, так это то, что каждый пример кажется продуманно подготовленным заранее, нет бессмысленных примеров, как в некоторых других курсах.Автор поощряет саморазвитие, а задания тщательно подготовлены для подтверждения полученных знаний и развития мышления и навыков. Я действительно впечатлен!”

      Вышеприведенное – лишь некоторые из тысяч положительных отзывов. Я призываю вас пройти первые 4 раздела этого курса БЕСПЛАТНО , чтобы увидеть, соответствует ли он вашим потребностям и предпочтительному стилю обучения. .  Если это так, присоединяйтесь к полному курсу и продолжайте оставшуюся часть курса с полной поддержкой. вы уже используете (если есть).В этом курсе я покажу вам, как загрузить и установить Visual Studio Code и MAMP (оба БЕСПЛАТНЫ и доступны для Mac и Windows).

      Если вы не уверены, какой вариант редактора кода лучше всего подходит для вас, я рекомендую вам связаться со мной, и я буду рад обсудить с вами варианты.

      Вы также можете пройти этот курс, используя предпочитаемый вами редактор кода.

      Опять же, использование Visual Studio Code с MAMP НЕОБЯЗАТЕЛЬНО. Вы можете использовать ЛЮБУЮ подходящую среду разработки по вашему выбору.

      МОИ ОБЕЩАНИЯ ВАМ

      Как зарегистрированный учитель (да, я преподаю в реальном классе каждый день), я твердо верю, что моя работа заключается в том, чтобы вы чувствовали полную поддержку, посещая мои занятия.

    Оставить комментарий

    Ваш адрес email не будет опубликован.