Сап, учу Джаву, и одно из заданий - вывести с помощью вложенных циклов и просто циклов пикрил. Как рисовать просто перевёрнутую пирамидку из символов, я знаю, но как конкретно здесь располагаются числа, я никак не могу понять. Помогите пж, я уже заебался над ней карпеть, а закономерность не могу понять, хоть убей.
>>259713941 (OP) >закономерность На каждой i-й строчке сперва напечатать i пробелов, потом n=17-i цифр Цифры начинают печататься с нуля, и на каждой следующей позиции возрастают, пока индекс цифры не достигнет n/2, потом убывают. Плюс еще условие, если цифра превысила номер строки, то печатать номер строки.
>>259718140 Ты не понимаешь как цикл работает, хуесос? Если тебе для этого надо задачи какие-то решать, то ты пиздец дебил и тебе нельзя вкатываться в прогу. >>259718118 Для того чтобы освоить циклы надо ебанутые задачи на пирамидки решать?
>>259718298 >Ты не понимаешь как цикл работает, хуесос? Если тебе для этого надо задачи какие-то решать, то ты пиздец дебил и тебе нельзя вкатываться в прогу. ололо, у многих изучающий проганье тема циклов вызывает вопросы и требует времени и разнообразных задач для освоения. это норма миморепетитор
>>259718493 Ды требуют, чтобы вот эта хуетень на картинке была универсальной, т.е. высота не обязательно в 9 строк, а в любое введенное юзером, поэтому и непонятно
>>259718841 бля, это точно ОП или траленк? Если рили ОП - иди на хуй тогда, надо изначально все условия описывать ебать пичот мимо js-макака >>259717702
>>259718876 Это алгоритмический примитив. Если первокурсник технического вуза не способен с ходу понять, как работает цикл, то, будь моя воля, я бы отчислял сразу. И ведь таких не мало. В основном девочки.
>>259719086 сходу - не сходу, но скорее будет как-то так 1) цикл как способ просто повторить что-то n раз - 1/2 часового занятия, несколько задач 2) соблюсти число повторов и получить нужные значения на каждом - 1 занятие, много задач 3) for с условием как в while - 1/2 - 1 занятия 4) вложенные циклы, простые ситуации - 1/2 занятия 5) вложенные циклы, собранные из разных программ (минимум из максимумов из последовательностей) - 1/2 - 1 очень навскидку офк, некоторые справляются быстрее
>>259718841 Ну сделай через столбцы, дебик Фор н столбцов Фор н чисел Ввести столько то пробелов Ввести такое-то число (они последовательные) Нью лайн Как раз два цикла как ты и просил
>>259719374 Закономерность понял, когда индекс цифры становится равным строка - 1, то печатается это число и с какого то момента (вот это не понял) идёт по убыванию. Потом начиная с определенной строки (с 6 в моём случае) другой алгоритм вывода начинается.
>>259719783 карочи, за нихуя что-то уже влом переписывать и объяснять. Если есть монеты - кидай за щеку, можем хоть в дискорде попиздеть и всё разложить по полочкам мимо js-макака >>259717702
>>259720423 в данный момент я upper-middle php+js, но язык роли не играет на таких тривиальных задачах. Возможно в Java есть какие-то хитрые функции для работы со строками, но по твоим же условиям использовать строки нельзя, так что будет тупо алгоритм построенный на циклах и выводах цифр в консоль. Карочи думай-решай) мимо js-макака >>259717702
>>259720899 Я просил на Жабе, без строк и массивов, с перевёрнутой пирамидой. Каждый своим долгом решил сделать всё наоборот. Всё, всем пока, спасибо за попытки помочь.
>>259724551 Если смотреть внимательнее, то можно заметить, что алгоритм универсален и присутствует параметр n. А пользовательский ввод, прости уж, не сделал.
>>259725941 Ну, я не нашёл в треде внятного описания задачи, в частности параметра. За n я взял максимальное число в пирамиде, что логичнее. Допустим, n это высота пирамиды. Тогда какой результат должен быть при n=2?
>>259726126 дядь, я первый тащем-то решение скинул) без дополнительных условий, ибо ОП-хуй про них написал после моего кода. Ответ таки очевиден - деление на 2 без остатка. Но не все могут это понять итт
>>259726126 Запрещено использовать строки и массивы. Программа должна быть универсальной и рисовать эту хуйню от любого заданного h (высота треугольника, т.е. кол-во строк).
>>259714337 Ну, наверное, у тебя будет что-то двухмерного массива, который ты постепенно заполняешь и потом одним разом выводишь. Заполнять можно рекурсивно, если получится, хз.
>>259728899 >>259728989 >>259728990 Тогда ладно. Ставлю пятёрку. С минусом за то, что заставили меня самому изменять n и проверять. Давайте сюда зачётку.
>>259722511 >>259713941 (OP) ОП, просыпайся, я вспомнил про твой тред и доделал код (правда, понять его сможет только гений типа меня, а еще переменных я въебал как говна) Вводи любое число
package DlyaDvacha; import java.util.Scanner; public class yageniy { public static int i; public static int i1; public static double b; public static int i3; public static int b1; public static int i4; public static double i5; public static void main (String args[]) { i=0; Scanner input = new Scanner(System.in); b=input.nextInt(); i5=Math.round(b/2);
b1=0; for (i1=1; i1<=i5; i1++) { i=0; for (int i2=0; i2<b1; i2++) { System.out.print(" "); } for (i3=1; i3<b; i3++) { System.out.print(i);
if (b % 2==1) { if (i3<i1 & i3<Math.round((b/2))) { i++; } if (i3>(b-i1) & i3>=Math.round(b/2)) { i=i-1; } } else { if (i3<i1 & i3<(b/2)) { i++; } if (i3>(b-i1) & i3>(b/2)) { i=i-1; } }
а можно написать решение, чтобы это была просто одна математическая формула от координат точки и размера треугольника, которая бы возвращала символ, который нужно отрисовать по этим координатам?
>>259732936 хз о чём ты, ответил на твой изначальный вопрос исходя из практики - если задачу можно описать словами, то в 99% случаев её можно запрограммировать
Бля интересная задачка, сделал бы ее на шарпе и лучше чем половину гениев выше потому что элементарно, но после 15 часового дня написания кода, у меня отрофия мозга и ненависть к коду и всего что с ним связано
>>259735947 Ага, только у тебя памяти питон все равно сожрёт больше. Там оптимизации со строками идут и они заранее в памяти создаются. И за такой однострочник тебе елдой по губам на работе водить будут
>>259720300 Ты поехавший? Сколько он должен заплатить чтобы было нестыдно взять? Я сам иногда думаю предложить пиццу заказать рандомному разрабу в чатике в благодарность за помощь, но сразу же понимаю как глупо будет выглядеть "спасибо" в виду 2к человеку, который уже забыл как деньги считать и сидит минимум на 200\мес. Дольше с адресом и заказом ебаться.
Ебаный ОП, я встал с лютого похмелья (да что уж там, я в запое), выпил две стопки, пробило днище, пошел срать. Пока срал, нашел тред. И теперь эта пирамидка не дает мне покоя. Пойду писать. Хотя я на джаве вообще не пишу, ну да похуй.
>>259732075 Кстати, анончики, никто не в курсе почему у меня тильда не вбивается с первого раза, а только со второго и сразу две штуки? Не смог нагуглить, а чутка подбешивает.
>>259736143 Да не, он просто написал, что проходит циклы и только с их помощью нужно сделать. Я думаю там в его учебнике надо просто 10 циклов напистать по одному на каждую строку, да и все. Никакой речи о расшираяемости и т.п. А может тролит двач. Подкинул условие мидл-левела с какого-нить кодворса и прикинулся шлангом.
>>259736343 >скрине вообще вижу 17 и 19 Ну да, у меня значение задается по срокам, а не столбцам. Поэтому изначально такой проблемы небыло. И проблем с лишними строками под треугольником тоже небыло.
>>259736173 дело не в нестыдно, а в минимальной мотивации. Пачки сиг и пары банок норм пива (рублей 500) хватило бы за глаза мимо js-макака >>259717702
Короче, иди нахуй, ОП. 5 утра, я занимаюсь какой-то хуйней. С похмелюги голова вообще не думает.
Выглядит так, как будто тут есть красивое решение. Но я сижу и путаю i с j, в пизду. Нихуя голова не варит. Таски делать гораздо проще на работе, чем твою ебаную пирамиду.
Именем себя, снимаю с себя обязанность дописать это говно.
>>259736604 Ну так то при выводе в консоль все символы переводятся в строки. И цифры тоже. Под строками наверное имеется ввиду класс String и все его методы.
>>259736721 Да. Только вот когда ты выводишь пробел и пишешь " " - это и есть класс String. И даже твой поганый пробел добавляется в хип и в стринг пул. Чозахуйня в задаче ОП, я хз. Но прочитав про строки, которые НЕЛЬЗЯ использовать, я решил, что и решать такую тупо поставленную задачу не хочу.
>>259736858 Откуда я знаю, что у тебя там в качестве консоли? Может у тебя подключен символьный экранчик и ты пишешь к нему драйвер на жабе? И в этом случае точно никаких строк нет, зато можно ебаться в регистры и байты.
КАК ВЫВЕСТИ ПИКРЕЛЕЙТЕД НА АСМЕ? МНЕ ДОМАШКУ ЗАДАЛИ!!!11
Запилю пока прохладную про асм. Как-то препод по статистике выдал лабораторную работу и сказал, что решать её можно на любом ЯП, ему пох. Есесно я тут же уточнил, можно ли на асме? Одногруппники вскекнули, а препод подохуел и сказал, что не надо на асме, лол.
Делается она относительно несложно. И в каком-то плеере я видел фильтр изкоробки, показывающий видео в таком виде. Любой фильм включаешь и смотришь. Вроде в VLC такой был, если не попутал.
>>259736721 >>259736604 Блять, это задачка для школьника нарисовать треугольнички в треугольничке циферками, придумав алгоритм. Чтобы он понял нахуй что такое программирование и методология, разработал свой анус подход к решению задачи. >>259713941 (OP) Ты не видишь что это треугольники в треугольниках? Нахуя тебе помощь, если самая важная часть именно в том, что ты должен понять? Даже без прибегания к геометрии, у тебя есть номера строк и столбцов, ИДИОООТ!
>>259736976 Я бы принял работу и на асме. Во-первых, асм крайне простой язык, хоть и писать на нем долго. Во-вторых, если кто-то осилит запилить задание и не обосраться - почет и уважуха, не важно, понимаю ли я это или нет.
>>259737007 >Это ASCII-графика, самый, что ни на есть текстовый формат, работающий на центральном процессоре. Шоблять? А нахуй тогда для смены шрифтов в свое время микросхему на видеокарте перешивать приходилось?
>Учитывая, что эти картинки состоят из символов, можно смело предположить, что ни в какой видеопамяти никто никакие байты не трогал Вообще, картинка куда ближе к настоящему терминалу, чем ты можешь себе представить. Разве что память там использовалась планарная, в то время как в VGA текст и аттрибуты чередуются друг с другом.
>Вроде в VLC такой был, если не попутал. Есть 2 популярные либы - aalib (чб) + libcaca (цветное), есть поддержка даже в мплеере. Но пикрелейтед - 100% хендмейд.
>>259736856 Ну ты доебался до хуйни, конечно. Прикидываешься, что у тебя концептуализация отсутствует? А так если - ' '? Или (char)32? >Ну строки состоят из символов, так что это тоже своего рода строки, пук-среньк...
>>259737134 > Шоблять? > А нахуй тогда для смены шрифтов в свое время микросхему на видеокарте перешивать приходилось? Потому что она была устаревшим говном, не справляющимся с задачей, очевидно. Сейчас же не приходится?
А всем ньюфагам рекомендую к просмотру различную демосцену со Спектрумов, Коммодоров или Атари, где деды ебашились байтиками в регистры видеочипов и делали невозможное возможным. Просто напишите в ютубе c64 demoscene 2021 и смотрите кино.
>>259737229 Голова твоя - кусок говна, а символьные генераторы и сегодня используются
>>259737134 >А нахуй тогда для смены шрифтов в свое время микросхему на видеокарте перешивать приходилось?
Когда-то давно, во времена текстовых терминалов, видеокарты работали в двух режимах - текстовом и графическом. Полноценный текстовый режим использовался тогда на терминалах, которые кроме текста, ничего не могли отображать. И для смены шрифта, возможно и надо было перешивать что-то. Только вот последние видеокарты с полноценным текстовым режимом исчезли, наверное, лет 25 назад. С тех пор все видюхи работают исключительно в графическом режиме и ничего перешивать не надо. И что бы сопоставить символ шрифта с куском изображения на современном компе, в видеопамять ГПУ лезть совершенно не нужно. Для статической картинки я такой код на C# за час никадаю. Для видео, думаю, там все не намного сложнее. Когда-то, на ТЕХ компах это, может, и было круто, когда надо было в текстовые регистры лезть, но сейчас таким даже студента второкурсника не удивишь, двумя циклами for все сделать можно.
>>259737385 > деды ебашились байтиками в регистры видеочипов и делали невозможное возможным Это было интересно тогда, когда ничего другого тупо не было. Еще раньше тупо палками ебашились за кусок мяса.
>>259737180 Да понятно всё. Давай еще перетрем за то, что строки внутри процессора уже совсем не строки.
Но просто именно что в джаве строки определены довольно конкретно, а ОП на ней и пишет. Задача скорее путает, чем помогает. Постановка условия (как и все уебанские курсы и учебники в наше время) - говно.
>>259737518 Конечно не кодер, а картинки рисовал в фотошопе. А почему нельзя писать драйвера на жабе? Мне вот на курсах говорили, что на жабе можно написать все!11
>>259737531 Не в его власти пререкаться с преподом. Он всего лишь будущий раб системы. Сказали нарисуй без строк - значит сделай так, чтобы никто не обратил на точность формулировок внимания. А ты предлагаешь ему самому обращать. Зачем ему себя закапывать? И да >>259737180
>>259737550 Не, давай не будем перетирать. Я как раз против этого. А задача именно что очень хорошо отражает реалии и готовит к работе. Понимай ТЗ как хочешь - удобно трактуй, игнорируй совсем уж дебильные алогизмы - выдай то, что хочет конченый пользователь: "чтобы было норм)) работало крч".
>>259738596 >Ничего не понимаю в программировании, но суть в следующий: цифры возрастают по порядку ближе к центру, но максимальное число ограничено рядом . Ебать ты гений конечно, а мы тут часов 15 уже тупим почему-то
>>259745834 > без циклов без массивов ты хотел сказать? Половина постеров треда решили. Причем я ни у кого не видел статических переменных для циклов, как у тебя. Не дай бог тебе так на собесе написать.
>>259749658 >Половина постеров треда решили. Я просто только того анона с джаваскриптом заметил, на джаве решали? >не видел статических переменных Я бы мог начать оправдывать это тем, что я первокурсник, но не буду. А что со статиками не так? Удобно вроде.
А нельзя просто скопировать код из питоши и вставить в ваши джавы? Ну и там поменять питоновские команды циклов на жавовские. Логика должна быть та же, тут в задаче ведь ничего, кроме арифметики и print нет, так ведь? https://pastebin.com/zTaDLdJR
>>259752137 > А что со статиками не так? Удобно вроде. GC не освобождает статические объекты. Это чревато утечками памяти. У них глобальная область видимости. Статические переменные и объекты вообще лучше никогда не создавать без особой на то необходимести. Собственно в твоем примере можно было их определить просто в классе main, сделав полями класса. Области видимости класса тебе бы хватило.
Собственно вопросы о статических и нестатических объектах, одни из самых частых на собеседованиях. Если ты не знаешь как выделяется память под статические объекты и как с ними работает GC, то собес ты не пройдешь. А за выделение статических переменных под счетчики цикла тебя просто сразу приговорят к 10 годам расстрела резиновыми пулями. Ты бы еще отдельный класс запилил под счетчики.
>>259753792 >скопировать код из питоши и вставить в ваши джавы Можно, просто зачем это делать, если те, кто писал на других языках, сделали это короче, читабельнее и в два цикла, а не пять, как у тебя. Щас бы еще поебаться с интерпертированием твоей лапши. Это скорее тебе надо у местных джавистов и шарпистов решение взять и на свой питон перекинуть.
>>259756207 Третий для пробелов не в счет. Это не отдельный цикл алгоритма, а первая половина третьего цикла. Он существует только потому что нельзя использовать массивы и класс строк. Иначе можно было просто генерить строку с нужным количеством пробелов и вставлять ее, а не дрочить пробелы фором.