Программирование

Номер и значение минимального элемента одномерного массива в С++

Прежде всего нам понадобится подключить 2 библиотеки:

#include <iostream>
#include <stdlib.h>
using namespace std;
  • Библиотека stdlib.h было подключена мной только для того чтобы тестировать массив, для использования функции - генератора случайных чисел - rand(). Если вы планируете заполнять массив вручную или считывать его откуда-то вам она не пригодиться

Теперь объявим наш массив. Я буду сортировать дробные числа (float):

Бинарный поиск на С++

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

Приступим к построению класса, который использует данный алгоритм.

Из библиотек нам особо ничего не понадобится...

Обмениваемся данными с USB девайсом при помощи libusb

LibUsb - библиотека для языка C, которая позволяет обмениваться данными с устройствами по протоколу usb.

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

Прежде всего стоит отметить, что данные можно слать разными способами. Мы рассмотрим асинхронную передачу прерывания ( interrapt transfer )
Этот тип передачи позволяет передавать небольшие объёмы данных без получения подтверждения о получении. Тобеш послали и забыли))

При работе с libusb следует помнить, что его нужно инициализировать:

Нахождение суммы модулей элементов массива размещённых после ноля

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

#include <iostream>
using namespace std;

В главной функции программы оприделим наш массив:

int a[10] = {1,-3,5,0,-5,6,8,9,-8,6};

Зарезервируем переменную для суммы: