Индуктивные функции на Си: подсчёт, сумма, произведение

  Рет қаралды 24,196

Тимофей Хирьянов

Тимофей Хирьянов

5 жыл бұрын

Индуктивные функции.
Подсчёт цифр числа.
Сумма цифр числа.
Произведение цифр числа.
Курс молодого бойца по информатике (Язык Си).
cs.mipt.ru/c_intro

Пікірлер: 12
@user-gy5lg4vp9i
@user-gy5lg4vp9i 4 жыл бұрын
Обычно после уроков меня тянет спать...но не в этом случае. Я влюбился в твой курс
@Forttig
@Forttig 5 жыл бұрын
очень доходчиво
@k777ig
@k777ig 4 жыл бұрын
Спасибо огромное)
@user-qy3jg1th1j
@user-qy3jg1th1j 4 жыл бұрын
Круто. Спасибо @Тимофей. Вот у меня есть какая задача в тему. Есть массив целых чисел (внушительный, около 80 млрд). Суть задачи заключается в подсчете минимального и максимального значений в массиве и их количества. Задача немного усложнена тем, что крайне желательно делать это примитивными функциями (без библиотек) потому как выполнение будет на GPU-ускорителе. И второе, крайне важное условие. Хотелось бы это сделать за один проход, поскольку частое копирование из ОЗУ ЦПУ в ОЗУ ГПУ и обратно (небольшими порциями по 10 ГБ за раз) будет негативно влиять на производительность. Да и массив изменяется довольно таки часто (7-8 изменений в сек). Есть какие-то идеи: как подсчитать? Есть смысл создать структуру на СИ и в нее записывать значения? Спасибо :)
@recreationreally4382
@recreationreally4382 4 жыл бұрын
Неплохое у кого-то GPU, если 10 Gb - небольшая порция. Вам сортировать не надо. Разбиваете массив данных на число фрагментов равное числу нитей и ищете локальные экстремумы параллельно. На следующем шаге ищете глобальные экстремумы (их два - максимум и минимум) среди локальных. Зачем Вам структуры если все целое? Для индексации 80 млрд элементов потребуются многомерные массивы, например, [2000][2000][20000] или [2000][4000000]. Ззагружать в графическую память придется порциями, она вроде бы много меньше чем 320 Gb.
@user-gy5lg4vp9i
@user-gy5lg4vp9i 4 жыл бұрын
@@recreationreally4382 ты че такой умный?
@zakharatat5464
@zakharatat5464 Жыл бұрын
а почему эти программы не умеют считать кол-во знаков, сумму, произведение чисел которые состоят более чем из 10 знаков? кто знает?
@programer8
@programer8 3 жыл бұрын
Когда хотим подсчитать количество цифр какого-то числа, то оператор int digit = n % 10; является лишним.
@user-ov1tt2dw6w
@user-ov1tt2dw6w 3 жыл бұрын
Полагаю это сделано нарочно, чтобы количество строк не отличалось между собой. Так визуально легче различать, где именно происходят изменения.
@user-fg9qm3qb9y
@user-fg9qm3qb9y 7 ай бұрын
нихуя не понятно но очень интересно
@nicholasspezza9449
@nicholasspezza9449 4 ай бұрын
астралопитек "бучий, пшел отселя
@user-hg5ss9vm6v
@user-hg5ss9vm6v 3 жыл бұрын
Сложнааа
Индуктивные функции на Си: any of, all of
8:01
Тимофей Хирьянов
Рет қаралды 21 М.
1v1 Coding Lockout Championship Finals
3:37:39
Errichto Hard Algorithms
Рет қаралды 71 М.
1 класс vs 11 класс (неаккуратность)
01:00
БЕРТ
Рет қаралды 4,4 МЛН
КАКОЙ ВАШ ЛЮБИМЫЙ ЦВЕТ?😍 #game #shorts
00:17
Отображения множеств
14:56
Математика и котики
Рет қаралды 32 М.
Индуктивные функции на Си: поиск максимума
23:38
Тимофей Хирьянов
Рет қаралды 24 М.
Метки, оператор goto и оператор switch в Си
11:34
Тимофей Хирьянов
Рет қаралды 31 М.
Деление нацело и взятие остатка
8:40
Тимофей Хирьянов
Рет қаралды 37 М.
Решето Эратосфена на Си
11:41
Тимофей Хирьянов
Рет қаралды 57 М.
Техника безопасности при работе с памятью в Си
19:25
Тимофей Хирьянов
Рет қаралды 33 М.