Green-sell.info

Новые технологии
3 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Проекты по программированию c

Подборка идей для программирования

  • Переводы, 6 июня 2018 в 14:30
  • Екатерина Никитина

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

Список приложений разбит на группы:

Инструменты командной строки

  • where-is – команда, помогающая находить путь к файлам. Вывод – список возможных локаций. Пример ввода: where-is grub config . Пример вывода: /boot/default/grub.d или /etc/grub.d .
  • Улучшенная cd с поиском. При вводе cd Directory программа ищет каталог и переходит в него, если каталог с таким именем один. Если результатов несколько, предоставляет на выбор список.
  • Утилита командной строки, которая выводит расширение файла. Пример команды: ext hello.jpg . Пример вывода: jpg .
  • Утилита, которая генерирует случайную строку длины N. Пример команды: chars 10 . Пример вывода: gwrtp+5gl

.

  • Хешировщик. Пользователь вводит строку и хеш-алгоритм (SHA-1, MD5, Bcrypt и так далее), а приложение возвращает хешированную строку.
  • Инструмент командной строки для команды grep в SQL: grepsql «sarah» -db=»people» .
  • Локальные, неинтерактивные инструменты

    • Программа на USB-накопитель для автоматического перемещения файлов с флешки на ПК без предупреждений о «потенциальной угрозе».
    • Обучение конфигурированию Apache из командной строки. По принципу работы должно быть похоже на githug.
    • OCR (Optical Character Recognition) – инструмент для распознавания текста на изображении.
    • Генератор глифов. Создает глиф для каждой буквы алфавита и сохраняет его в файле шрифта.
    • Программа или скрипт на Bash, который ведет лог всех действий с отслеживаемыми файлами. Пример лога:
      [23-02-2015] my/php/file.php [opened]
    • Программа для поиска в исходнике неиспользуемых функций. Примитивная попытка реализации.
    • Программа, которая ищет захардкоженые элементы и предлагает им замену. К примеру, на использование строки «You can register by 30th of June» в HTML-шаблоне она должна давать предупреждение «You can register by REGISTRATION_DATE».
    • Программа, которая конвертирует изображение в текстовый эквивалент. Пример: конвертация Image to ASCII.
    • Программа, которая восстанавливает номер телефона по аудиофайлу его тонального набора. Подробности.

    Настольные приложения

    • Просмотр логов Apache — вывод в колонках, с поддержкой регулярных выражений. Утилиты вроде Graylog слишком перегружены для таких простых целей.
    • Базовый редактор видео, который поддерживает полезный минимум функций, включая слияние двух видео.
    • Кроссплатформенный менеджер подкастов (пример — gpodder). Функциональность:
      • Добавлять / удалять подписки на подкасты.
      • Теги для подписок (программирование, музыка, креатив и тому подобное).
      • Поиск по тегу.
      • Просмотр по тегу.
    • Настольное приложение, отражающее системную информацию. Разметка на HTML и поддержка CSS-стилей. Вывод — панель, показывающая нагрузку на ЦП в процентах. Пример реализации.
    • Приложение-метроном, поддерживающее сложные размеры и такты, к примеру, один такт 7/8, а следующий — 5/4. Плюс поддержка нескольких темпов в пределах нескольких тактов.
    • Настольное приложение для профилирования кода. Обеспечивает выполнение анализируемого приложения/функции заданное количество раз и на выходе выдает файл с результатами в формате csv/txt.
    • Графический интерфейс для удаления/добавления записей контекстного меню.
    • Тамагочи.
    • Что-то вроде игры в алхимию. Задача — выращивать в саду разные растения, нуждающиеся в определенных условиях. Когда растения вырастут, из них можно готовить разные зелья.
    • Игра «Защити свой замок».
    • «Ракетный ранец»: человечек должен добраться от одного края карты до другого на ракетном ранце, минуя препятствия.

    Веб-сайты

    • Онлайн-приложение для структурирования мыслей. Навигация по записям может быть в боковом меню:
      • Todo: организованная структура списка дел.
      • Notes: бессистемные идеи.
    • Онлайн-календарь, не требующий авторизации. При создании календаря пользователь получает постоянную ссылку на него. Все, у кого есть ссылка, могут добавлять в календарь события.
    • Веб-утилита, которая генерирует изображение как определенного разрешения, так и определенного размера файла.
    • Веб-сайт, который показывает список IT-работ от благотворительных организаций или других людей. Разработчики выбирают проект и выполняют работу бесплатно. Что-то похожее есть, однако сервис не ориентирован на IT.
    • OpenGameMusic —веб-сайт, где музыканты будут публиковать свою музыку и предоставлять разработчикам игр возможность использовать ее.
    • Онлайн-версия «Змейки» с дополнениями.
    • Веб-сайт с базой данных птичьих голосов. Представлен в формате: Фото птицы | Имя птицы | Кнопка для прослушивания голоса | Кнопка «Узнать больше».
    • Веб-сайт, содержащий базу данных инструментов, которые есть в песне. К примеру, можно искать песни, в которых две скрипки и фортепиано.

    Сервисы

    • Онлайн-бот, который следит за ценой товара на eBay/Amazon, и как только она достигает порогового значения, покупает его.
    • Программа, которая мониторила бы на eBay/Amazon указанные продукты и уведомляла бы о падении цены или о том, что новый продавец добавил этот товар на витрину по меньшей цене. Альтернативный вариант — уведомление на почту, если цена товара достигла установленного значения.
    • Генератор сайта по разметке Markdown, не требующий установки. Нужно просто отправить файл на сервер, и тот его отображает.
    • Программа с открытым кодом для поиска и бронирования хостелов, похожая на на DormBooker, но бесплатная и более функциональная.
    • Программное обеспечение с распознаванием голоса, контролируемое RaspberryPi, которое отслеживает количество произнесенных WTF (или других более родных слов) в минуту и выводит график продуктивности.


    Только начали изучать программирование? Рекомендуем ознакомиться с нашим планом обучения Computer Science.

    Язык C# и первые проекты

    Создание C#

    Язык C # является наиболее известной новинкой в области создания языков программирования. В отличие от 60-х годов XX века — периода бурного языкотворчества — в нынешнее время языки создаются крайне редко. За последние 15 лет большое влияние на теорию и практику программирования оказали лишь два языка: Eiffel, лучший, по моему мнению, объектно-ориентированный язык, и Java , ставший популярным во многом благодаря технологии его использования в Интернете и появления такого понятия как виртуальная Java -машина. Чтобы новый язык получил признание, он должен действительно обладать принципиально новыми качествами. Языку C # повезло с родителями. Явившись на свет в недрах Microsoft, будучи наследником C ++, он с первых своих шагов получил мощную поддержку. Однако этого явно недостаточно для настоящего признания достоинств языка. Попробуем разобраться, имеет ли он большое будущее?

    Создателем языка является сотрудник Microsoft Андреас Хейлсберг. Он стал известным в мире программистов задолго до того, как пришел в Microsoft. Хейлсберг входил в число ведущих разработчиков одной из самых популярных сред разработки — Delphi. В Microsoft он участвовал в создании версии Java — J++, так что опыта в написании языков и сред программирования ему не занимать. Как отмечал сам Андреас Хейлсберг, C # создавался как язык компонентного программирования, и в этом одно из главных достоинств языка, направленное на возможность повторного использования созданных компонентов. Из других объективных факторов отметим следующие:

    • C# создавался параллельно с каркасом Framework .Net и в полной мере учитывает все его возможности — как FCL, так и CLR;
    • C# является полностью объектно-ориентированным языком, где даже типы, встроенные в язык, представлены классами;
    • C# является мощным объектным языком с возможностями наследования и универсализации;
    • C# является наследником языков C/C++, сохраняя лучшие черты этих популярных языков программирования. Общий с этими языками синтаксис, знакомые операторы языка облегчают переход программистов от С++ к C#;
    • сохранив основные черты своего великого родителя, язык стал проще и надежнее. Простота и надежность, главным образом, связаны с тем, что на C# хотя и допускаются, но не поощряются такие опасные свойства С++ как указатели, адресация, разыменование, адресная арифметика;
    • благодаря каркасу Framework .Net, ставшему надстройкой над операционной системой, программисты C# получают те же преимущества работы с виртуальной машиной, что и программисты Java. Эффективность кода даже повышается, поскольку исполнительная среда CLR представляет собой компилятор промежуточного языка, в то время как виртуальная Java-машина является интерпретатором байт-кода;
    • мощная библиотека каркаса поддерживает удобство построения различных типов приложений на C#, позволяя легко строить Web-службы, другие виды компонентов, достаточно просто сохранять и получать информацию из базы данных и других хранилищ данных;
    • реализация, сочетающая построение надежного и эффективного кода, является немаловажным фактором, способствующим успеху C#.

    Виды проектов

    Как уже отмечалось, Visual Studio . Net для языков C #, Visual Basic и J# предлагает 12 возможных видов проектов . Среди них есть пустой проект , в котором изначально не содержится никакой функциональности; есть также проект , ориентированный на создание Web-служб. В этой книге, направленной, прежде всего, на изучение языка C #, основным видом используемых проектов будут обычные Windows-приложения. На начальных этапах, чтобы не усложнять задачу проблемами пользовательского интерфейса, будем рассматривать также консольные приложения .

    Давайте разберемся, как создаются проекты и что они изначально собой представляют. Поговорим также о сопряженных понятиях: решение (solution) , проект (project) , пространство имен (namespace) , сборка (assembly) . Рассмотрим результаты работы компилятора Visual Studio с позиций программиста, работающего над проектом , и с позиций CLR , компилирующей PE- файл в исходный код процессора.

    С точки зрения программиста, компилятор создает решение , с точки зрения CLR — сборку , содержащую PE- файл . Программист работает с решением , CLR — со сборкой .

    Решение содержит один или несколько проектов , ресурсы, необходимые этим проектам , возможно, дополнительные файлы, не входящие в проекты . Один из проектов решения должен быть выделен и назначен стартовым проектом . Выполнение решения начинается со стартового проекта . Проекты одного решения могут быть зависимыми или независимыми . Например, все проекты одной лекции данной книги могут быть для удобства собраны в одном решении и иметь общие свойства . Изменяя стартовый проект , получаем возможность перехода к нужному примеру. Заметьте, стартовый проект должен иметь точку входа — класс , содержащий статическую процедуру с именем Main, которой автоматически передается управление в момент запуска решения на выполнение. В уже имеющееся решение можно добавлять как новые, так и существующие проекты . Один и тот же проект может входить в несколько решений .

    Проект состоит из классов, собранных в одном или нескольких пространствах имен . Пространства имен позволяют структурировать проекты , содержащие большое число классов , объединяя в одну группу близкие классы. Если над проектом работает несколько исполнителей, то, как правило, каждый из них создает свое пространство имен . Помимо структуризации, это дает возможность присваивать классам имена, не задумываясь об их уникальности. В разных пространствах имен могут существовать одноименные классы. Проект — это основная единица , с которой работает программист. Он выбирает тип проекта , а Visual Studio создает скелет проекта в соответствии с выбранным типом.

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

    Консольный проект

    У себя на компьютере я открыл установленную лицензионную версию Visual Studio . Net 2003, выбрал из предложенного меню — создание нового проекта на C #, установил вид проекта — консольное приложение , дал имя проекту — ConsoleHello , указал, где будет храниться проект . Как выглядит задание этих установок, показано на рис. 2.1.

    Если принять эти установки, то компилятор создаст решение , имя которого совпадает с именем проекта . На рис. 2.2 показано, как выглядит это решение в среде разработки:

    Интегрированная среда разработки IDE (Integrated Development Environment ) Visual Studio является многооконной, настраиваемой, обладает большим набором возможностей. Внешний вид ее достаточно традиционен, хотя здесь есть новые возможности; я не буду заниматься ее описанием, полагаясь на опыт читателя и справочную систему. Обращаю внимание лишь на три окна, из тех, что показаны на рис. 2.2. В окне Solution Explorer представлена структура построенного решения . В окне Properties можно увидеть свойства выбранного элемента решения . В окне документов отображается выбранный документ, в данном случае, программный код класса проекта — ConsoleHello.Class1 . Заметьте, в этом окне можно отображать и другие документы, список которых показан в верхней части окна.

    Построенное решение содержит, естественно, единственный заданный нами проект — ConsoleHello . Наш проект , как показано на рис. 2.2, включает в себя папку со ссылками на системные пространства имен из библиотеки FCL , файл со значком приложения и два файла с расширением cs . Файл AssemblyInfo содержит информацию, используемую в сборке , а файл со стандартным именем Class1 является построенным по умолчанию классом, который задает точку входа — процедуру Main , содержащую для данного типа проекта только комментарий .

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

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

    Пространству имен может предшествовать одно или несколько предложений using, где после ключевого слова следует название пространства имен — из библиотеки FCL или из проектов , связанных с текущим проектом . В данном случае задается пространство имен System — основное пространство имен библиотеки FCL . Предложение using NameA облегчает запись при использовании классов, входящих в пространство NameA , поскольку в этом случае не требуется каждый раз задавать полное имя класса с указанием имени пространства , содержащего этот класс . Чуть позже мы увидим это на примере работы с классом Console пространства System . Заметьте, полное имя может потребоваться, если в нескольких используемых пространствах имен имеются классы с одинаковыми именами.

    Все языки допускают комментарии . В C #, как и в С++, допускаются однострочные и многострочные комментарии . Первые начинаются с двух символов косой черты. Весь текст до конца строки, следующий за этой парой символов, (например, «//любой текст» ) воспринимается как комментарий , не влияющий на выполнение программного кода. Началом многострочного комментария является пара символов /* , а концом — */ . Заметьте, тело процедуры Main содержит три однострочных комментария .

    Здесь же, в проекте , построенном по умолчанию, мы встречаемся с еще одной весьма важной новинкой C # — XML-тегами, формально являющимися частью комментария . Отметим, что описанию класса Class1 и описанию метода Main предшествует заданный в строчном комментарии XML-тег . Этот тэг распознается специальным инструментарием, строящим XML-отчет проекта . Идея самодокументируемых программных проектов , у которых документация является неотъемлемой частью, является важной составляющей стиля компонентного надежного программирования на C #. Мы рассмотрим реализацию этой идеи в свое время более подробно, но уже с первых шагов будем использовать теги документирования и строить XML-отчеты. Заметьте, кроме тега возможны и другие тэги, включаемые в отчеты. Некоторые теги добавляются почти автоматически. Если в нужном месте (перед объявлением класса, метода) набрать подряд три символа косой черты, то автоматически вставится тэг документирования, так что останется только дополнить его соответствующей информацией.

    Опубликовать проект Фриланс работа › C/C++ в России 29 фильтр активен

    Нужно программное обеспечение для стима которое поможет максимально быстро отследить новый предмет на этой площадке. Игра — cs:go, объязательна фильтрация по стикерам. В некоторых случаях могу заплатить больше

    написать программку на С. Программа для управления контроллером доступа. Обращение к базе данных типа SQ Light . Сигналы и обращение к внешним перифирийным устройствам и датчикам. Желателен опыт работы с микропрограммами для контроллеров.Так как добавятся еще задачи, за.

    Сроки сбора вариантов – 3.04 до 12:00 Мск. Стоимость – бюджет оговаривается с кандидтом отдельно. В BPM online настроены ДБ с прямой аналитикой. Необходима доработка ДБ для построения более развернутой оперативной аналитики. Ищем сотрудника для долгосрочной поддержки по.

    Необходимо выполнить практические задания по методичке.6 задание включительно.Сделать подробный отчёт со скринами и пояснениями к ним. Дать ответы на контрольные вопросы в конце отчёта. В отчёт также должна включена блок-схема программы (6 задание).

    1) Запускаем ехе файл (софт). 2) он выдает 5 цифр. (id) 3) Для активации софта вводится ключ (key). Софт работает до определённого времени (date). Всё функционирует стандартно как и везде. Сейчас есть связка id + key. Но key ограниченного срока действия. Нужно написать key.

    C/C++ , Delphi/Object Pascal, Защита ПО и безопасность

    Помочь разобраться: 1. C подключением к клиенту, выполнение примера SELECT и INSERT 2. Подключить обработку ошибок Ссылка на клиента: https://github.com/ClickHouse/clickhouse-cpp

    Всем привет! Есть софт формата .exe Исходника кода данного софта нет! Задача сделать привязку данного софта к одному ПК для того что бы его нельзя было копировать и открывать на других ПК Напишите пожалуйста кто может помочь в решении данной задачи? Цена решения данной.

    C/C++ , Python, Системное программирование

    Необходимо реализовать приложение, реализующие передачу по протоколу SNMP v2c. И приемник (агент) и передатчик (эмулятор, для тестов), реализовать set-response и обработать get-response полей будет около 20-25. реализовать нужно или на с++11 stl или qt но не старше 5.5.1.

    Здравствуйте. Можно ли создать бота для игры «Astellia». Возможности бота. 1. Лечение В игре присутствует аналог питомца, они помогают игроку и местами сражаются за него. Я хотел, чтобы бот лечил его. 2. Таймер Нужно чтобы бот лечил его по таймеру. Каждые две минуту. Тип того

    C/C++ , Javascript, Разработка ботов

    1.Cоставить программу на С++ в Ubuntu которая сможет восстановить смазанное изображение 2.Реализовать методом преобразования Фурье или другим. 3. Программа должна обрабатывать изображение не более 10 минут. 4.Комментарии к программе должны присутствовать. 5.Программа должна.

    Для сдачи сессии нужно выполнить задачи все в C++ и оформление каждой задачи в ворде. Если не трудно комментариями к коду объясните что да как. Скину документ с нужными задачами. Каждую задачу отдельно и пометить какая задача к какой программе.

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

    C#, C/C++ , Прикладное программирование

    День добрый! Необходимо написать приложение на С++/QML под Win 7+ способное получить LBA с внутренних и внешних устройств. Внутренние устройства — это дисковые накопители IDE, SATA, NVMe. Внешние устройства — это дисковые устройства (список выше), но подключенные через мосты.

    C/C++ , Прикладное программирование, Системное программирование

    С# для новичков: развеиваем мифы и пишем простого чат-бота

    Рассказываем о С#, даём полезные советы и делаем первые шаги в программировании.

    Что такое С#

    С# (произносится «си шарп») — это современный язык программирования, созданный компанией Microsoft. На нём можно писать программы любой сложности для любых платформ и операционных систем.

    C# устроен так, чтобы программист мог писать меньше кода. Для этого в языке много «магических конструкций» и «синтаксического сахара» — способов выразить идею лаконично.

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

    Мария Грегуш

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

    Мифы о работе в С#

    C# может казаться страшным и сложным, но на самом деле его совсем не стоит бояться. Давайте посмотрим на главные мифы о нём.

    1. Чтобы стать C#-разработчиком, надо учиться долгие годы. Это очень популярный миф, но на самом деле достаточно нескольких месяцев, и вы уже можете работать junior-разработчиком .
    2. Чтобы быть C#-разработчиком, надо разбираться в высшей математике. Это стереотип не только о конкретном языке, но и о программировании в целом. В реальности программисты 99% времени не используют математику — за исключением некоторых областей, прямо с ней связанных. Если вы делаете веб-сайты, создаете мобильные приложения, видеоигры — математика вам не понадобится.
    3. C# — это что-то сверхсложное. Как мы уже сказали, этот язык создавался так, чтобы в нём было удобно работать. Поэтому любой хорошо написанный код читается и понимается так же легко, как текст на английском языке.

    Стартовая позиция в программировании. Специалист, который имеет небольшой опыт работы с каким-то языком и выполняет простую работу с перспективой роста.

    Почему же стоит учить C#

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

    Что разрабатывают на С#

    • Десктопные приложения.
    • Серверные приложения и веб-сайты.
    • Мобильные приложения.
    • Консольные приложения и утилиты.
    • Универсальные приложения для десктопов, планшетов, смартфонов.

    Этот язык создавался специально для разработки под Windows, так что с программами под эту операционную систему у вас не будет проблем. Это касается и Windows Phone, для которого C# — основной язык разработки. Но это не значит, что вы можете писать только для Windows, — C# замечательно работает и с другими операционными системами.

    Как эффективнее работать с C#

    Для эффективной работы полезно знать о дополнительных инструментах. Вот некоторые из них:

    1. WPF(Windows Presentation Foundation) поможет легко и быстро создать интерфейс для любых экранов, уменьшает количество кода, отображающего интерфейс.
    2. Xamarin — фреймворк для разработки кроссплатформенных приложений для Windows Phone, Android и iOS. То есть вы напишете один код, и он сразу будет работать на всех основных платформах.
    3. ASP.NET помогает просто и быстро связать серверный код с клиентским в серверных приложениях и веб-разработке.
    4. Entity Framework — один из лучших фреймворков для работы с базами данных. Позволяет работать с данными как с объектами.
    5. LINQ(Language Integrated Query) — мини-язык запросов, встроенный в C# и позволяющий легко выбирать, фильтровать, сортировать и группировать любые данные из любых источников: баз данных, массивов, структур, файлов и так далее.
    6. Visual Studio — среда разработки, созданная специально для языка C#.

    Писать код в среде разработки удобно. У неё много плюсов, например:

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

    Пишем чат-бота

    Теперь пора перейти к практике. Сегодня мы будем работать в онлайн-среде ideone. Серьезные программы в онлайн-средах не пишутся, но для обучения и практики это самое то!

    Итак, откроем сайт ideone. Слева будет окошко для кода. Возможно, что по умолчанию там будет выбран другой язык — тогда просто нажмите на его название и выберите C#.

    Самые первые слова любого программиста — «Привет, мир!» (Hello, World!), поэтому и мы начнём с них. Хотя не совсем: мы позволили себе заменить «мир» на «Скиллбокс» 😉 Чтобы отобразить наше сообщение, используем команду Console.WriteLine (). Свой текст напишем в скобках и не забудем поставить кавычки. Вот так:

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

    Чтобы общаться с нашим будущим чат-ботом, нам надо научить его читать — то есть сделать так, чтобы мы могли задавать информацию, с которой он будет работать. Для этого мы используем команду Console.ReadLine (). Она прочитает текст, который написал пользователь.

    Давайте уже напишем начало: пусть чат-бот здоровается, а потом читает наше сообщение:

    Прочитать-то он прочитает, но память у бота короткая — надо, чтобы он это сообщение запомнил. Для этого сохраним его в переменную — назовём её, например, text. Вместо Console.ReadLine () напишем вот так:

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

    Важно!
    Не забывайте ставить точку с запятой в конце каждой строчки!

    Чтобы задать свой input, запустите программу, а потом нажмите кнопку edit слева вверху над кодом.

    Снизу откроется окошко с надписью input над ним. То, что вы там напишете, программа использует при следующем запуске.

    Сейчас наш чат-бот умеет здороваться и может повторить, что мы ему написали. Давайте научим его реагировать на то, что мы пишем. Для этого нам понадобится конструкция if — она проверяет, соблюдено ли условие, и решает, что делать дальше. На новой строке напишем if и в круглых скобках напишем условие. Пусть в ответ на «Привет» бот отвечает «Здарова!». Мы можем написать вот так:

    У нашего решения есть несколько проблем. Первая: если мы напишем весь свой текст маленькими или большими буквами, программа его не опознает. Что с этим делать? Добавим команду ToLower (), которая заменит все буквы на маленькие, и текст, с которым мы сравниваем сообщение пользователя, тоже перепишем маленькими буквами, вот так:

    А что, если мы напишем «Привет, как дела?»? Наш бот никак не отреагирует. Чтобы это исправить, используем функцию Contains (), которая проверит, есть ли нужная строка в нашем вводе.

    Можем разнообразить словарный запас нашего бота, добавив ещё условий:

    Теперь, если мы напишем «Привет! Как тебя зовут? Как дела?», наш бот напишет ответ на все фразы по очереди.

    Важно!
    Если бы вы писали более сложного «настоящего» бота или другую программу, вы бы не копировали один и тот же код много раз, а использовали файл, базу данных или что-то другое. Когда одна и та же часть повторяется много раз, код неудобно читать и тяжело исправлять.

    А что, если мы хотим получать не только такие ответы, но и меняющуюся информацию? Например, нам интересно, какой сегодня день. Если бы мы написали сегодняшнюю дату в такую же конструкцию, как выше, то или нам пришлось бы переписывать код каждый день, или наша программа сразу бы устарела. Нам поможет функция DateTime. Спросим у неё, какая сейчас (Now) дата, переведём это в строку нужного формата (ToString («dd.MM.yyyy»)) и всё это сохраним в переменную date. Вот так это выглядит:

    И напоследок ещё одна важная тема.

    Конструкция if часто идет в паре с else. Else описывает, что сделать в том случае, если условие из if не выполнится.

    Используется else после if — но мы уже не пишем условие, а только действие в фигурных скобках. Вот пример этой конструкции:

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

    Для первого раза всё! Это были основы основ C#. Вы уже знаете, как отобразить текст (и не только), работать с информацией от пользователя, искать в тексте фразы, и попробовали работать с конструкцией if-else, которая очень важна. Из этих «кирпичиков» можно смело начинать строить!

    Если же вас интересует более глубокое погружение в C# и вы хотите научиться работать с этим языком уверенно и профессионально, можно записаться на наш курс «Профессия C#-разработчик».

    Курс

    Профессия С#-разработчик

    130 часов — и вы научитесь писать программы на языке, созданном Microsoft. Вы создадите 5 проектов для портфолио, даже если до этого никогда не программировали. После обучения — гарантированное трудоустройство.

    Проектная работа создания вычислительной программы на языке С++

    Как организовать дистанционное обучение во время карантина?

    Помогает проект «Инфоурок»

    Муниципальное бюджетное общеобразовательное учреждение средняя общеобразовательная школа №46 с углубленным изучением отдельных предметов

    Ученик 8А класса школы

    МБОУ СОШ №46 Котляр Егор.

    Руководитель Таборских Н.А

    Актуальность. 3
    Цели. 3
    Задачи. 3
    Как можно использовать продукт. 3

    Основная часть проекта. 4

    Теоретическая часть. 4

    Результаты проекта. 6

    Описание возникших проблем. 6

    Список источников информации. 6

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

    Целью данного проекта является создание полезной вычислительной программы для взвешивания продуктов на языке программирования С++.

    Задачи проекта.

    Составить описание программы;

    Составить краткое описание языка программирования С++;

    Написать инструкцию для программы;

    Составить руководство пользователя ;

    Как можно использовать продукт?

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

    Основная часть проекта

    Краткое описание языка программирования С++

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

    Краткое описание кода в языке С++, использующиеся в моей программе

    ( a , ab , cd – примеры переменных)

    #include — позволяет ввести в программу библиотеку, которая позволяет использовать другие команды, в зависимости.

    main ( void ) – основа программы.

    int a , ab , cd …; – позволяет перечисленным переменным являться целочисленными переменными.

    float a , ab , cd …; – позволяет перечисленным переменным являться переменными с плавающей запятой.

    printf («Сообщение») – выводит какое-либо сообщение в рабочую область программы.

    n – переход на следующую строку.

    scanf(«%f «,& a ); — позволяет переменной присвоить введённое пользователем значение с плавающей запятой.

    scanf(«% d «,& a ); — позволяет переменной присвоить введённое пользователем целочисленное значение

    system(«cls»); — полностью очищает рабочую область программы.

    while(Условие) <Тело цикла>– задает цикл, который выполняется, пока условие будет верно.

    if (Условие) <Тело>– выполняет указанное тело логической операции, если условие верно.

    break; — позволяет выйти из цикла вне зависимости от выполнения условия.

    kbitt () – позволяет определить, нажата ли какая-то клавиша или нет.

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

    Для начала я составил блок-схему, которая поможет мне в определение плана работы над программой:

    Для начала я создал приветствие продавца, там же написана версия программы и её автор (я) на английском, так как язык программирования плохо поддерживает русский язык. Продолжение выполнения программы я решил сделать при нажатии клавиши Enter . После чего я разработал ввод цен на товары продавцом. В нем я фиксировано создал наименования продуктов, а также решил, что всего их будет 10, потому что я не могу сделать так, чтобы можно было изменять список продуктов при выполнении программы, из-за неполного знания о программном языке С++. Здесь я использовал «защиту от дураков». Цена за килограмм не может быть отрицательной или равна нулю, так как отрицательной цены за килограмм не существует, а если она будут равна нулю, то прибыли товар не принесет, а продавцу это не нужно. Если же продавец по случайности введет отрицательное значение или ноль, то защита сработает и попросит еще раз ввести цену продукта за килограмм. Далее я работал над списком товаров, который пролистываться вверх и вниз покупателем для ознакомления со списком товаров путем нажатия стрелочки вверх и вниз соответственно, а при нажатии Enter этот список закрывается. Далее программа запрашивает код продукта из просмотренного покупателем списка, а также массу где. Если же введенное число оказывается нулем или отрицательным, то срабатывает «защита от дураков» и покупатель повторно вводит это число. После чего происходим расчет, и выдается чек покупателю. После этого нажимается Enter и снова показывается список продуктов, т.е. программа зациклена. Чтобы остановить программу нужно закрыть её.

    Я добился цели проекта путем тщательной работы над ним.

    В моей программе не смотря на некоторые плюсы, есть проблемы. Ими являются:

    Не полностью усовершенствованная защита «защита от дураков».

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

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

    Программу можно использовать только на компьютере.

    Читать еще:  Что означает в программировании
    Ссылка на основную публикацию
    ВсеИнструменты
    Adblock
    detector