|
8 / 5 / 3
Регистрация: 19.09.2019
Сообщений: 89
|
||||||
Соответствует ли код условиям задачи (внутри)?08.11.2019, 11:41. Показов 2862. Ответов 9
Задача:
Напишите программу, в которой есть базовый класс с открытым целочисленным полем. В классе описан виртуальный индексатор, позволяющий считывать цифры в десятичном представлении числа (значение поля). На основе базового класса создаётся производный класс, в котором появляется ещё одно открытое целочисленное поле. В производном классе описывается версия индексатора с двумя индексами: первый индекс определяет поле, значение которого используется, а второй определяет разряд, для которого считывается цифра. Индексатор с одним индексом переопределяется так, что вычисления (считывание цифры в десятичном представлении числа) производятся на основе значения, равного сумме значений полей индексируемого объекта Код Кликните здесь для просмотра всего текста
0
|
||||||
| 08.11.2019, 11:41 | |
|
Ответы с готовыми решениями:
9
Точно ли код соответствует условию задачи? Соответствует ли последовательность заданным условиям Найти такую кривую, которая соответствует заданным условиям |
|
92 / 62 / 31
Регистрация: 22.12.2018
Сообщений: 121
|
||||||
| 08.11.2019, 16:41 | ||||||
|
По заданию вроде всё так. Только, в дочернем классе не обязательно перекрывать поле родительского.
Но, что если значение индекса будет больше, чем длина числа? Будет exception Index Out Of Range с последующим аварийным завершением программы. Имеет смысл, реализовывать проверку,т.к. отлов исключений тяжелее, чем if, да и предназначен совсем для другой цели. На 43 строке, можно обратиться напрямую к базовому индексатору. На будущее: если есть некое вычисление повторяющееся много раз (как, например у вас во всех возвратах индексатора двойной ToString), имеет смысл его результат сохранить в переменную(свойство). Этот шаг немного повысит скорость выполнения. Или просто есть, переменная с длинным обращением к ней, мы можем сделать ей "псевдоним". Убиваем двух зайцев: нет многочисленных вычислений одного и того же значения и таким образом немного повышается удобочитаемость. Иллюстрация на основе Вашего кода
1
|
||||||
|
8 / 5 / 3
Регистрация: 19.09.2019
Сообщений: 89
|
|||||||||||||||||
| 09.11.2019, 03:38 [ТС] | |||||||||||||||||
вернее так:
0
|
|||||||||||||||||
|
Модератор
|
||||||
| 09.11.2019, 08:54 | ||||||
|
Шрайн, индексатор лучше переписать так
Аналогично сделать и для индексаторов в производном классе.
1
|
||||||
|
Модератор
|
||||||
| 09.11.2019, 09:52 | ||||||
|
Шрайн, полный код базового класса
1
|
||||||
|
Модератор
|
||||||
| 09.11.2019, 09:52 | ||||||
|
Добавлено через 38 минут
Полный код производного класса
Пишу со смарта - могут быть мелкие ошибки.
1
|
||||||
|
92 / 62 / 31
Регистрация: 22.12.2018
Сообщений: 121
|
||||||||||
| 09.11.2019, 12:13 | ||||||||||
|
К сожалению, данная реализация ошибочна, т.к. складывает только один разряд, без учёта следующего. Т.е. например: в родительском классе число 1024, в дочернем 2048. Обращаемся по индексу 2 и получаем 2+4 возврат 6, но по правилам сложения 1024+2048=3072 возврат 7.
2
|
||||||||||
|
Модератор
|
|
| 09.11.2019, 15:01 | |
|
dazering, да, невнимательно прочёл задание.
Нужна не сумма цифр, а цифра суммы. Шрайн, переопределенный индексаторов возьмите из последнего поста dazering.
1
|
|
| 09.11.2019, 15:01 | |
|
Помогаю со студенческими работами здесь
10
Метод из интерфейса должен создавать новый массив (код программы и текст задачи внутри) У меня есть файл и внутри этого файла есть код, я хочу его открыть в IDLE питон так, чтобы внутри код вывести Объясните, пожалуйста, что значит код, расположенный внутри тега, и код, расположенный внутри страницы? Решение задачи по данным условиям Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|