Тема: OFF: ChatGPT vs Человеческий Разум — за кем будущее IT?
Переношу сюда сообщения из этой темы.
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Серый форум → Общение → Script-Coding.com community → OFF: ChatGPT vs Человеческий Разум — за кем будущее IT?
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Переношу сюда сообщения из этой темы.
Так это, ЧатЖПТ же уже скрипты пишет, говорят, как нефиг делать. Самим не надо уже. Наверно, и на АНК умеет.
На AHK как раз плохо умеет. Но идею может подкинуть.
Я бы сказал вытащить из chat-gpt хоть что-то рабочее проблема ещё та. Вроде всё красиво, но на деле ошибок дофига. То версию путает то функции из Питона берёт.
По крайней мере в этой версии (не реклама).
Хм, не знал, что уже есть такой сайт.
По крайней мере в этой версии (не реклама).
Эта вроде старенькая уже.
На AHK как раз плохо умеет.
Та версия, что выше? Или 4-я?
YMP
Если есть другие - дайте ссылку, посмотрим всем форумом.
Та версия, что выше? Или 4-я?
Четвёртую пока не тестировал, она на данный момент вроде есть только по платной подписке.
Однако на других ЯП может демонстрировать неплохие результаты. Я сам использовал для Java — несложные вещи пишет довольно неплохо, да ещё и с комментариями.
С AHK, видимо, проблема в том, что недостаточно данных, так как язык не очень популярный.
__Михаил__, не, я понаслышке. Говорят, что каждая новая версия заметно умнее.
Однако на других ЯП может демонстрировать неплохие результаты.
Да, думаю, скоро часть программистов останется без работы.
Мне вот этот кейс понравился:
https://habr.com/ru/news/723116/
Это читал.
скоро часть программистов останется без работы
Не, не скоро (если не считать верстальщиков программистами). Просто рутинной работы меньше станет.
Оказывается, уже начинают заменять:
https://habr.com/ru/news/723724/
Использовать и заменять — не одно и то же.
Почему?
Вместо того, чтобы нанять разработчика, я использую чат-гпт, тем самым лишаю разработчика работы (заменяю его).
Заменой в прямом смысле этого слова было бы увольнение существующих программистов.
На AHK как раз плохо умеет. Но идею может подкинуть.
Gui, Add, Text, x10 y10 w100 h20, Имя пользователя: ; добавляем текстовую метку для пол�� ввода имени пользователя
Gui, Add, Edit, x120 y10 w150 h20 vUserName, %UserName% ; добавляем поле ввода имени пользователя, которое будет содержать тек��щего пользователя по умолчанию
Gui, Add, Text, x10 y40 w100 h20, Пароль: ; добавляем текстовую метку для поля ввода пароля
Gui, Add, Edit, x120 y40 w150 h20 vPassword, ; добавляем поле ввода пароля
Gui, Add, Text, x10 y70 w100 h20, Путь к exe-файлу: ; добавляем текстовую метку для поля ввода пути к exe-файлу
Gui, Add, Edit, x120 y70 w150 h20 vFilePath, %FilePath% ; добавляем поле ввода пути к exe-файлу, которое будет содержать текущий путь к файлу по умолчанию
Gui, Add, Button, x280 y70 w50 h20 gSave, Сохранить изменения в скрипте ; добавляем кнопку "Сохранить"
Gui, Add, Button, x50 y100 w120 h30 gCancel, Отмена ; добавляем кнопку "Отмена"
Gui, Show, w350 h150, Редактирование AHK-скрипта ; отображаем форму
Save:
Gui, Submit, NoHide ; передаем значения формы
UserName := GuiControlGet("UserName")
Password := GuiControlGet("Password")
FilePath := GuiControlGet("FilePath")
; формируем новый код скрипта
NewScript =
(
RunAs, %UserName%, %Password%
Run, "%FilePath%"
)
; перезаписываем файл скрипта новым содержимым
FileDelete, MyScript.ahk ; удаляем существующий файл скрипта
FileAppend, %NewScript%, MyScript.ahk ; записываем новый тек��т в файл скрипта
; выводим сообщение об успешном сохранении
MsgBox, 64, Успех, Изменения в скрипте сохранены!
ExitApp ; закрываем приложение
Cancel:
ExitApp ; закрываем приложение
О как выдало, нет только ретурн и:
GuiControlGet(Control) {
GuiControlGet, %Control%
Return Control
}Только полностью скопировал 1 сообщение))).
Это он просто синтаксис версий путает.
YMP
Я не поклонник ЖПТ, честно говоря первый раз его открыл, раз уж ссылку дали, хватает восторгов от новичков, и как они завтра себе запилят всё что надо).
Я бы не ограничивался в названии темы одним лишь ChatGPT.
Сейчас искуственный интеллект пихают во все стартапы, даже в те, в которых он не особо нужен.
Как сказал один заказчик - тенденция такая.
Ну мы же пока рассматриваем тему в аспекте генерации кода, а другие нейросети пока не так прославились в этой нише.
В общем, своеобразный интеллект. Человек возьмёт описание языка, почитает и напишет код. Этот так не может. Ему нужно прошерстить тонны уже написанного кода. А если тонн немного, то этим языком он овладеет так себе. Т.е. он, по сути, ничего не понимает.
В последнее время, кстати, встречал немало жалоб пользователей соцсетей на их техподдержку, которая не может объяснить, за что этих пользователей заблокировали. Какие пункты правил они нарушили и чем конкретно? В ответ невнятное бормотание. И я подумал: так это же, наверно, тоже он, ИИ. Он же блокирует. А т.к. он не может прочитать правила и их понять, то и не указывает нарушенные пункты. У него какие-то свои критерии, которые он вывел в процессе обучения на примерах хороших и плохих постов. Ну и работники техподдержки, соответственно, ничего внятного ответить не могут. И в итоге дурацкая ситуация.
Вот поэтому я уверен, что не переведутся богатыри-айтишники на земле нашей. В конечном итоге должен быть кто-то из живых, кто понимает, что происходит в коде.
В конечном итоге должен быть кто-то из живых
Я склоняюсь, что в конечном итоге из живых останется лишь искусственный интеллект.
У него какие-то свои критерии, которые он вывел в процессе обучения на примерах хороших и плохих постов
Скоро и на автохотки такое можно будет сделать.
Надо дождаться когда медипайп из превью выйдет и тогда smbape добавит новые возможности в свою ком библиотеку для автоит.
https://developers.google.com/mediapipe … classifier
Я склоняюсь, что в конечном итоге из живых останется лишь искусственный интеллект.
Это примерно настолько же оригинальная мысль, как и "мы все когда-нибудь умрём". ![]()
Кстати, по слухам chatgpt5 будет обладать agi.
https://twitter.com/blader/status/1640217165822578688
В таком случае "кто-то из живых, кто понимает, что происходит в коде" может идти на заслуженный отдых. ![]()
А пойти выпить водки с инвестором AGI сможет? ![]()
Вот что на эту тему отвечает сам ChatGPT:
Сможет ли AI (AGI) в будущем полностью заменить программистов, и почему?
Текущие технологии искусственного интеллекта (AI) не могут полностью заменить программистов, и нет никаких гарантий, что достижение искусственного общего интеллекта (AGI) когда-либо позволит этому произойти.
AGI - это разновидность искусственного интеллекта, способной выполнить любую когнитивную задачу, которую может решить человеческий разум. Однако, даже если AGI будет достигнут в будущем, это не означает, что он полностью заменит программистов.
Почему? Во-первых, создание программы - это более сложная задача, чем выполнение задания. Даже если мы создадим AGI, который может решить любую задачу, люди все еще будут нужны для создания и настройки программ, необходимых для выполнения этих задач.
Во-вторых, программирование - это не только создание кода, но и понимание того, как решать проблемы с помощью технологий. Программисты анализируют проблемы, находят решения и разрабатывают стратегии. Эта способность к креативному мышлению и принятию решений вряд ли может быть полностью вытеснена машинами.
Кроме того, программисты не только пишут программы, но и взаимодействуют с клиентами, решают создаваемые проекты. И машинам, даже имеющим AGI, может не хватить такой сообразительности и дипломатичности для работы в таком режиме, как делают люди.
В заключение, AGI - огромное достижение науки. Однако это не значит, что он полностью заменит программистов. Человеческий интеллект, креативность и сообразительность позволят программистам оставаться важными игроками в создании технологий в светлом будущем.
Вот что на эту тему отвечает сам ChatGPT
Сам ли? Или это отвечают те, чью писанину на эту тему он через себя прогнал?
Может ли в принципе у него быть своё мнение? Тут он скорее сильно продвинутый Гугл, который не ссылки на тему выдаёт, а компилирует их содержание.
Хотя, может, и человек делает что-то подобное. Начитается статей и постов про ИИ и выдаёт некое мнение. Такую же компиляцию чужого. Из которого он отобрал то, что по каким-то причинам кажется ему правдоподобным. В силу, возможно, каких-то его заблуждений.
Я особо серьёзно к мнению ChatGPT не отношусь, просто в такой теме было бы несправедливым не дать ему слова. Но когда дело касается предсказаний будущего, то даже в тех областях, в которых предсказатели разбираются, чаще всего результаты не более надёжны, чем простое угадывание.
У нас нет точного определения понятия "интеллект". Тем более нет определения "искусственный ителлект". Все, что пытаются протолкнуть - под этим, так называемым брендом - всего лишь достаточно сложная, но всего лишь, программа и, возможно, какая-то навороченная база данных. Не более.
Лет 20 назад был ажиотаж вокруг "живого поиска" от гугла, когда по мере набора текста выводились примерные ответы на полученные запросы. Тогда в моду входила техноголия ajax. Сейчас почти каждый, чуть более сложный сайт с поиском и прочими плюшками реализует в разы более крутые фишки чем "живой поиск" 20-летней давности.
Мне понятен ажиотаж вокруг всей этой чепухи среди людей далеких от ИТ. Мне не понятен аналогичный ажиотаж среди людей, причастных к ИТ. Мы все пишем программы, скрипты. С большей вероятностью не очень высокой сложности, чаще всего наши поделки решают какие-то прикладные задачи - жеминутные или повседневные.
Все эти современные "ИИ" - каким-то хитрым подбором или перебором предлагают какие-то релевантные ответы из имеющихся, либо комбинируют ответ из вероятных правильных вариантов. Причем ответы могут быть не самые лучшие.
Буквально сразу после прочтения этой ветки я решился таки "пообщаться" с так называемым "ИИ". Получилось следующее.
Я попросил
нужна программа суммирования чисел от 1 до 100
. И, ожидаемо, в ответ я получил программу циклического суммирования чисел от 1 до 100. Потом какое-то время мучил упомянутый "ИИ" желая получить оптимизированную и более бвструю версию программы. Периодически мне предлагались варианты действительно более оптимальные, как только я уточнял требования на скорость или оптимизацию, все возвращалось к первому варианту суммирования ряда. Однажды мне даже был предложен вариант на C++ с параллельным вычислением. Там был треш на пару десятков строк. Если бы этот, так называемый, "ИИ" обладал бы действительно интеллектом, то он бы предложил мне программу в одну строку на Python/Perl/или прочих, подобных языках или 3-5 строк на C/C++/Rust и т.д.
Я заметил, что там сильно зависит от того, как вопрос задать.
Приведи наиболее оптимальный алгоритм суммирования целых чисел от 1 до n
Для суммирования всех целых чисел от 1 до n, наиболее оптимальным алгоритмом является математическая формула:
сумма = (n * (n + 1)) / 2Этот алгоритм работает с временной сложностью O(1), так как мы выполняем лишь одно умножение и одно деление, которые не зависят от n.
(Для тех, кто с AHK: знак / здесь целочисленное деление.)
Хотя, я сам бы использовал
(n + 1 + (n & 1)) * (n >> 1) + (n & 1)Этот позволяет работать с большим диапазоном чисел.
Мне не понятен аналогичный ажиотаж среди людей, причастных к ИТ
Ну, ажиотаж или нет, но мне мой брат-программист уже сообщил, что бывают дни, когда он сам вообще ни строчки кода не пишет (он на TypeScript). ![]()
но мне мой брат-программист уже сообщил, что бывают дни, когда он сам вообще ни строчки кода не пишет
IT-помещик с плантациями?
Rumata, эта тема поднималась неоднократно, но "передовики" так и будут уповать на то, в основе чего лежит линейная алгебра и матрицы, как на новую веху в истории человечества.
Хм, лежит ли в основе интернета что-то революционно новое, чего до его появления не было известно?
IT-помещик с плантациями?
Нет, почему, работник.
лежит ли в основе интернета что-то революционно новое, чего до его появления не было известно?
Коммутация пакетов, например. Микросхемы, на основе которых стали собираться роутеры, тоже были своего рода революцией.
Нет, почему, работник.
Который филонит?
"передовики" так и будут уповать на то, в основе чего лежит линейная алгебра и матрицы, как на новую веху в истории человечества
Ок, но в чём проблема с линейной алгеброй и матрицами? Используя их, никак нельзя сделать что-то, что приведёт к началу новой вехи в истории человечества? Я просто не очень понял ваш посыл.
Который фелонит?
Просто пользуется доступным теперь инструментом. Те, кто пишут тексты на компьютере, а не на печатной машинке или от руки, они филонят?
Кстати, поинтересовался, какие открытия, которые привели к появлению ChatGPT, были сделаны в области нейросетей:
Да, в области нейросетей было открыто несколько принципиально новых технологий, которые привели к возможности создания более мощных и точных нейросетей. Некоторые из них включают:
1. Рекуррентные нейронные сети (RNN) - это архитектура нейронных сетей, которая позволяет моделям сохранять и использовать контекстную информацию для более точного предсказания результатов. С RNN модели могут работать с последовательными данными, такими как текст, звук и видео, что делает их особенно полезными для обработки естественного языка.
2. Сверточные нейронные сети (CNN) - это архитектура нейронных сетей, которая использует свертки и пулинг для извлечения признаков из входных данных. CNN применяются для анализа изображений, распознавания речи и многих других задач, связанных с обработкой сигналов.
3. Трансформеры (transformers) - это архитектура нейронных сетей, которая используется для обработки последовательных данных, таких как тексты. Они базируются на механизме внимания (self-attention mechanism), который позволяет модели обращаться к разным частям входных данных и использовать эту информацию для генерации более точных результатов.
4. Глубокие обучающиеся Q-сети (DQL) - это алгоритм, который используется для обучения нейронных сетей в средах с подкреплением. Они используют алгоритм Q-обучения (Q-learning) для обучения модели принимать решения в зависимости от данных входных данных.
Каждое из этих открытий и технологических новшеств привело к возможности создания более мощных и точных нейросетей, которые широко используются в настоящее время для обработки данных и выполнения различных задач.
Используя их, никак нельзя сделать что-то, что приведёт к началу новой вехи в истории человечества?
Отчего же? Всё возможно. Суть здесь более в зависимости того, что называют ИИ, от внешних факторов: человеческий (корректность построения библиотек, на основе которых строятся и обучаются машины, к примеру, Keras, TensorFlow и т.д.), ревизионный (т.е. возможность к пересмотру и модификации кода описывающего принципы обучения самой машиной), физический (способность к манипуляции регистрами процессора, управление электричеством опять-таки самой машиной). Иными словами, ИИ это более красивый фразеологизм, нежели действительность.
Те, кто пишут тексты на компьютере, а не на печатной машинке или от руки, они филонят?
Всё зависит от должностных обязанностей. Программист — это прежде инженер, решающий подчас нетривиальные задачи. Уповать на ChatGPT и иже с ним, по меньшей мере неразумно, и да, в данном случае, это действительно означает филонить. Раньше процветал копипаст, ныне копипаст стал бездумным. "Не, а чё? Работает и ладно!", — вот так и развивается IT индустрия в стране. Печально это.
Кстати, поинтересовался, какие открытия, которые привели к появлению ChatGPT, были сделаны в области нейросетей
Это можно прочитать и в книгах, коих достаточно. Для чего это дублировать ещё и здесь? Или вы ChatGPTсексуал?
ИИ это более красивый фразеологизм, нежели действительность
Ну, это на данный момент.
Программист — это прежде инженер, решающий подчас нетривиальные задачи.
Но даже у такого программиста достаточно рутинной работы, почему бы её не перепоручить нейросети (с проверкой результата, конечно).
Раньше процветал копипаст, ныне копиаст стал бездумным.
Это же наверно от человека зависит? Например, сейчас IDE могут генерировать код целыми блоками, это удобно, и я этим пользуюсь. Но это не значит, что я не понимаю, как он работает.
Это можно прочитать и в книгах, коих достаточно. Для чего это дублировать ещё и здесь?
А в чём проблема с тем, чтобы в обсуждении ChatGPT привести информацию о его создании? Чтобы показать вам, что ChatGPG не на голой линейной алгебре и матрицах создан, как, судя по вашей реплике, вы думаете, либо хотите представить для читающего.
Или вы ChatGPTсексуал?
Это что-то из области сексуальных девиаций? Не моя тема, тут вам, наверно, виднее. Или суть вопроса была в том, почему я привёл цитату из ChatGPG, а не скан страницы одной из книг, которых достаточно? Так, блин, пришлось бы сначала долго листать, искать нужную цитату, потом сканировать. А тут раз, пару секунд — и готово, просто удобно, смекаете?
Ну, это на данный момент.
Увы, долгосрочная перспектива с учётом уровня инвестиций и технологий.
Например, сейчас IDE могут генерировать код целыми блоками, это удобно, и я этим пользуюсь. Но это не значит, что я не понимаю, как он работает.
Это ваши проблемы ))
Чтобы показать вам, что ChatGPG не на голой линейной алгебре и матрицах создан, как, судя по вашей реплике, вы думаете, либо хотите представить для читающего.
Думать и знать — разные вещи. Также как и подходы к машинному обучению не являются строительными блоками или, лучше сказать, основой обучения. Поэтому в данном случае вы здесь очень поверхностно судите.
смекаете?
Смекаю, что вы избрали привлекательный, но заведомо ложный путь к расширению кругозора.
Это ваши проблемы
Это сильный аргумент, сдаюсь! ![]()
На мой взгляд за ИИ будущее. Хорошее ли оно будет? Тяжело сказать. В любом случае он ещё довольно примитивен, но уже способен удивлять в некоторых вещах тех кто плохо в этом разбирается.
Вот небольшой пример общения с ботом, вполне рабочие функции получил +пояснения как всё устроено:
Вы: Сможешь помочь: нужно на языке АХК создать функцию - преобразование форматированного времени в секунды.
Бот: Конечно! Вот пример функции на языке AutoHotkey для преобразования форматированного времени (ЧЧ:ММ:СС) в секунды:
TimeToSeconds(time)
{
StringSplit, timeArray, time, :
hours := timeArray1
minutes := timeArray2
seconds := timeArray3
totalSeconds := hours * 3600 + minutes * 60 + seconds
return totalSeconds
}
Объяснение:
Функция TimeToSeconds принимает один аргумент time, который должен быть в формате ЧЧ:ММ:СС.
С помощью встроенной функции StringSplit мы разделяем строку с временем по разделителю ":", и сохраняем каждую часть в отдельную переменную массива timeArray.
Затем мы присваиваем переменным hours, minutes и seconds соответствующие значения из массива.
Наконец, мы вычисляем общее количество секунд, используя формулу hours * 3600 + minutes * 60 + seconds, и возвращаем результат.
Пример использования:
time := "02:30:45"
totalSeconds := TimeToSeconds(time)
MsgBox % totalSeconds
Этот код должен преобразовать время "02:30:45" в 9045 секунд и отобразить сообщение с этим значением.
----------------------------------------------------------------------------------------------------------------------------------------------
Вы: А теперь сократи максимально на сколько ты способен, дабы функция была в минимум строк.
Бот: Вот сокращенная версия функции на языке AutoHotkey:
TimeToSeconds(time)
{
StringSplit, t, time, :
return t1 * 3600 + t2 * 60 + t3
}
Здесь мы используем переменные t1, t2 и t3, которые автоматически создаются после вызова StringSplit, чтобы избежать необходимости создания дополнительных переменных hours, minutes и seconds.
Таким образом, функция теперь занимает только две строки кода.
----------------------------------------------------------------------------------------------------------------------------------------------
Вы: А возможно ли ещё сократить?
Бот: Да, возможно еще немного сократить функцию, например, так:
TimeToSeconds(time) => (t:=StrSplit(time,":")).1*3600+t.2*60+t.3
Здесь мы используем лямбда-выражение, которое позволяет определить функцию в одной строке.
Функция StrSplit() возвращает массив, и мы можем обратиться к элементам этого массива по номерам 1, 2 и 3 (вместо t1, t2 и t3).
Теперь функция занимает всего одну строку кода!
----------------------------------------------------------------------------------------------------------------------------------------------
Вы: Так стоп, в АХК нет Лямбды
Бот: Приношу извинения за путаницу. Действительно, в AutoHotkey нет лямбда-функций, как в некоторых других языках программирования.
Вот оптимизированная версия функции на языке AutoHotkey без использования лямбда-выражений:
TimeToSeconds(time)
{
t := StrSplit(time, ":")
return t[1] * 3600 + t[2] * 60 + t[3]
}
Здесь мы используем функцию StrSplit, чтобы разделить строку time на три части - часы, минуты и секунды - и сохранить каждую часть в массиве t. Затем мы вычисляем общее количество секунд, используя формулу t[1] * 3600 + t[2] * 60 + t[3] и возвращаем результат.
Таким образом, мы можем сократить нашу функцию до двух строк кода.
----------------------------------------------------------------------------------------------------------------------------------------------
Вы: А теперь сможешь создать функцию для обратного действия? Нужно секунды перевести в формат ЧЧ:ММ:СС
Бот: Конечно, я могу создать функцию для конвертирования количества секунд в формат ЧЧ:ММ:СС!
SecondsToTimeString(seconds)
{
hours := Floor(seconds / 3600)
minutes := Floor((seconds - (hours * 3600)) / 60)
sec := Round(seconds - (hours * 3600) - (minutes * 60))
return Format("%02d:%02d:%02d", hours, minutes, sec)
}
В этой функции мы сначала вычисляем количеств�� часов, минут и секунд, используя высшую целую и остаток от деления для каждого значения. Затем мы используем функцию Format, чтобы сформатировать результат в виде ЧЧ:ММ:СС.
Результатом выполнения функции SecondsToTimeString для 62230 секунд будет строка "17:17:10".
Надеюсь, это поможет вам решить вашу задачу! Если у вас есть еще какие-то вопросы, не стесняйтесь задавать их!
----------------------------------------------------------------------------------------------------------------------------------------------
Вы: А возможно ли это тоже сократить до минимум строк?
Бот: Вот более компактный вариант функции, который оптимизирован для минимального количества строк кода:
SecondsToTimeString(seconds) =>
(Format("{:02}:{:02}:{:02}", seconds // 3600, Mod(seconds // 60, 60), Mod(seconds, 60)))
Этот код использует операторы // и % для вычисления количества часов, минут и секунд, а затем форматирует результат с помощью функции Format. Результатом функции для 62230 секунд будет строка "17:17:10".
Обратите внимание, что при использовании лямбда-выражения функцию можно записать в одну строку, без объявления функции и оператора return.
----------------------------------------------------------------------------------------------------------------------------------------------
Вы: Отлично. Правда тут снова Лямда, которой в АХК нет. Я исправил твои ошибки в этот код:
SecondsToTimeString(seconds){
Return Format("{:02}:{:02}:{:02}", seconds // 3600, Mod(seconds // 60, 60), Mod(seconds, 60))
}
Бот: Извините за путаницу! Я не учел, что вы используете более старую версию AutoHotkey без поддержки лямбда-выражений. Рад, что вы смогли исправить код и получить желаемый результат.
Ваша функция SecondsToTimeString работает аналогично коду, который я предложил выше, но в более простой форме. Здесь мы используем оператор Mod для вычисления остатка от деления, и функцию Format для форматирования чисел в двухзначный формат с помощью формата "{:02}".
Благодарю за понимание и вашу работу! Если у вас есть еще какие-то вопросы или потребности, не стесняйтесь обратиться ко мне для получения дополнительной помощи.
Вывод: код пишет, ошибки есть, исправить некоторые вполне возможно но знания нужны. Более сложные задачи уже не прокатит.
Да, в поисковике ИИ преуспели. Помню, пятнадцать лет назад надо было очень хорошо формулировать поисковику запрос, чтобы он не завёл тебя в дремучий лес. Сейчас намного лучше стало.
Так стоп, в АХК нет Лямбды
На самом деле уже есть: Fat arrow function.
teadrinker
Это конечно хорошо, но пока нет желания переходить на v2.
Так никто и не заставляет. Просто, как я уже писал выше, ChatGPT путает синтаксис первой и второй версии.
В любом случае он ещё довольно примитивен, но уже способен удивлять в некоторых вещах тех кто плохо в этом разбирается.
Парадокс человеческой сущности: понимать ограниченность, но при этом видеть в последней будущее.
Да, в поисковике ИИ преуспели.
В каком именно? Поисковики просто отошли от "плоской" модели ранжирования в сторону многоосевой. Гиганты вроде Microsoft и Google сравнительно недавно стали внедрять нейронные сети в свои поисковики, а все разговоры до этого были лишь, как ныне говорят, PR-ходом, призванным создать иллюзию приобщённости пользователей к самым передовым технологиям.
На самом деле уже есть
Вот ведь пострел! Опередил.
greg zakharov, прекратите старческое брюзжание! Признайтесь, это же вы в 2000-х говорили "в этих ваших интернетах"? ![]()
teadrinker, то есть разумные аргументы у вас закончились?!
Так у вас они закончились раньше.
Так у вас они закончились раньше.
Укажите конкретно с какого поста.
Честно говоря, мне лень. В любом случае, если хотите защитить/опровергнуть какую-либо позицию, начните с тезиса.
teadrinker, а что здесь защищать\опровергать? Вы сделали выпад, вам парировали просьбой привести конкретный пример, вы дистанцировались уклончивой фразой, — де-факто сие признание своей неправоты, ибо крыть в вашем случае попросту нечем.
greg zakharov,
Вы сделали выпад, вам парировали просьбой привести конкретный пример, вы дистанцировались уклончивой фразой, — де-факто сие признание своей неправоты, ибо крыть в вашем случае попросту нечем.
Это именно те самые слова, которыми можно описать ваше поведение на форуме:
Вашим кодом (огрехи которого целиком на вашей совести) ничего не доказать (витамины вам действительно необходимы).
Какие огрехи?
Если моим не доказать, докажите своим.
https://forum.script-coding.com/viewtopic.php?id=16658
Ну и еще уровень ЧСВ зашкаливает.
Ну и еще уровень ЧСВ зашкаливает.
Ну дык примите душ, если у вас что-то там чэсэвэ. И потом, не с вами диалог ведётся.
Ну дык удаляйтесь с форума, если вам что-то не нравится и ведите диалоги в своём телеграм канале.
Ну дык удаляйтесь с форума, если вам что-то не нравится и ведите диалоги в своём телеграм канале.
В самом деле. Почему вы этого ещё не сделали?
Потому что не я делаю подобные заявления, а некто greg zakharov:
Будь администратором форума, согласно праву на забвение, давно бы удалил свой профиль и все связанные с ним посты с этого форума.
Потому что не я делаю подобные заявления...
1) Это заявление было сделано персонально для вас?
2) Если выпилят все мои сообщения и профиль, то от своих слов не отказываюсь.
3) Понимаю, что ваше самолюбие уязвлено.
1) Для заявлений кому-либо конкретно есть личные сообщения, если вы не в курсе.
2) Платите - большинство выпилю.
3) Нет, так-как вы ничего внятного в той теме сказать не смогли.
У него какие-то свои критерии, которые он вывел в процессе обучения на примерах хороших и плохих постов
Проверил часть текста с поста про DynamicWrapper:
DWX was initially inspired by DynamicWrapper and written as an attempt to better implement the idea. Its code is not a modification of DynamicWrapper's code; it was written from scratch in the GoAsm assembly language.
Показал, что на 93% текст негативен. ![]()
https://mediapipe-studio.webapps.google … classifier
Malcev, в каком смысле негативен?
Я их собственное вступление туда ввёл
Categorize text based on a defined set of classes. The pretrained BERT-classifier model was trained for sentiment analysis, and predicts whether the input text's sentiment is positive or negative. For more information on labels, performance, etc., see the documentation.
и оно на 36% негативное. Чушь какая-то.
Просто модель была натренирована на отзывах к фильмам.
The pretrained models are trained for sentiment analysis, and predict whether the input text's sentiment is positive or negative. The models were trained on the SST-2 (Stanford Sentiment Treebank) dataset, which consists of movie reviews labeled as either positive or negative. Note that the models only support English. Since they were trained on a dataset of movie reviews, you may see reduced quality for text covering other topic areas.
Ну, понятно. Специалист подобен флюсу: полнота его одностороння. (с)
Глава компании NVIDIA Дженсен Хуанг сообщил, что в ближайшем будущем нейронки смогут писать код лучше людей, а потому уже сейчас нет никакого смысла учить детей программированию.
По крайней мере в видео он говорит не совсем это. Потом, люди всегда что-то говорят про будущее, чаще всего ошибаются.
Проверим через пару лет. ![]()
Надеюсь, будем иметь такую возможность. ![]()
OpenAI o1-preview обсуждают:
https://habr.com/ru/articles/844462/
Ну, пока ещё не идём улицы мести. ![]()
Там же ни одного кода и т.д. не представлено. Так каждый может понапридумывать текст.
Так вы сами можете протестировать.
Не находил рабочих вариантов протестировать без регистрации или VPN. Есть такие?
В смысле, без регистрации? На любом сайте нужна регистрация, даже на нашем. А с VPN в чём проблема, включил его, и всё. Не забыли, где живём? ![]()
Этот чат исключение? Не помню чтобы я подтверждал в нём регистрацию.
Там же ни одного кода и т.д. не представлено. Так каждый может понапридумывать текст.
Сомневаюсь, что предоставление кода может являться гарантией, что его написал OpenAI.
И смысл автору что-то выдумывать?
Посмотрите на его другие темы - он явно интересуется возможностями и настройками OpenAI, а рейтинг у него в минусе, полагаю, от того, что некоторые пользователи болезненно реагируют на темы связанные с ИИ.
Этот чат исключение?
Я:
Какую версию OpenAI ты используешь?
Бот:
Я основан на модели GPT-3.5 от OpenAI.
Пока lexikos задаётся вопросом, чего бы ещё "такого нужного" впендюрить в автохотки для полного счастья, Клод не стоит на месте:
https://docs.anthropic.com/en/docs/buil … mputer-use
Как я понял, это только платно.
В последнее время столько шума вокруг ИИ, по новостям трубят, что дело дошло даже до замены сотрудников. Верится с трудом, но любопытно мне, действительно ли это так? Вот есть тривиальная задачка, делать последовательно десять нажатий и читать текст с экрана. Как считаете, способен ли ИИ выполнять такую работу? Я пробовал чатжпт, но он не способен даже в собственном окружении выполнить нажатие.
Вы пытались использовать языковую модель явно не по назначению. Она только тексты генерирует, может и код написать, если хорошо попросить.
Постепенно ИИ научится многому, тогда уже реально люди будут увольняться массово (но не везде). На Питоне довольно уверенно себя чествует как минимум Grok и DeepSeek. Спокойно эмуляции нажатий на АХК пишет, но в сложные задачи не умеют пока что. Всё зависит от понимания как их использовать. Напишите хороший промт - будет качественный ответ / результат работы скрипта. По крайней мере уже сейчас можно что-то развёрнуто изучить или понять как устроено.
Хочу немного поделиться тут с "общением GPT". Но это общение делал не я, а другие "умы" (наши), которые в настоящее время его используют и уже оформили патенты в США на это использование. Могу дать линк ( hxxps://rutube.ru/video/fa305adfb33e46cb83a65672d323dc0c/ ).
Там в видео - конференция по ИИ , и докладчик, как раз тот чел который хорошо это ГПТ помучил прежде чем его применить для использования.
...
Год назад он в той конференции немного рассказал как ОН его помучил (мне понравился сам метод). Он ему рассказал сказку, про деда который вырастил репку, и которую надо тянуть. ГПТ всё понял, и в кратце изложил сказку, по своему. Тогда, автор "теста" завёл там второго себя (юзера), и в том во втором акаунте кинул туда краткое содержание текста первого. И попросил ГПТ по этому краткому содержанию составить подробный рассказ. И ГПТ конечно не точно но понятным языком изложил сказку в подробностях. Т.о. автор понял что с ГПТ можно иметь дело. И поэтому ОН использовал его для своих целей.
ремарка.
Автор этот препод в универе.
Напишите хороший промт - будет качественный ответ / результат работы скрипта. По крайней мере уже сейчас можно что-то развёрнуто изучить или понять как устроено.
У меня ChatGPT (и прочие аналоги) уже как настольный инструмент, который всегда в работе. Да, далеко не всегда удается одним запросом получить готовое решение. Но идеи подкинуть он может, да и рутину всякую пишет отлично. При этом часто такое выдает, до чего я бы сам и не додумался.
Пожалуй, мы переходим на следующий этап. Если раньше были настольные книги, и чтобы кодить, приходилось листать книжку, делать краткие пометки в тетрадке. Следом появился гугл и ему подобное, плюс интернет наполнился контентом. Книги перестали быть актуальны, а вопросы решались через поисковики (в крайних случаях можно было спросить на форумах и ждать ответа). То сейчас это нейронка. Нет смысла гуглить (нейронка уже знает все, что может выдать гугл), а в большинстве случаев и на форумах спрашивать не имеет смысла. От нейронки не надо ждать ответа, и чаще всего ответ она дает верный.
P.S. В свете последних тенденций построить "суверенный интернет", как бы нам опять к книгам и тетрадкам не вернуться. Ну или в каменный век...
в большинстве случаев и на форумах спрашивать не имеет смысла
Да, это точно. Говорят, активность на программистских форумах снизилась примерно на 50%. Как следствие, разработчики свободного ПО перестают получать фидбек, и снижается мотивация им заниматься.
Перенесу обсуждение нейронок из тему HTML: Игра "Крестики-Нолики" на чистом HTML (без скриптов) в эту тему.
А причина, по которой решил продолжить данные сравнения - полное разочарование в ChatGPT 5. Складывается ощущение, что предыдущая версия была более точна в своих ответах, потому что таких откровенных косяков я за ней не припомню.
Вот какой вопрос был задан ChatGPT 5:
Какое количество цветов может отображать компьютер ZX Spectrum?
Чтобы не утруждать вас чтением полного текста, приведу лишь выжимку ключевых моментов:
Компьютер ZX Spectrum использовал палитру из 8 базовых цветов: чёрный, синий, красный, пурпурный, зелёный, бирюзовый, жёлтый и белый.
Кроме того, каждый цвет мог быть обычным (normal) или ярким (bright), что фактически даёт 16 возможных вариантов цвета для отображения на экране.
Ответ неверный, точнее, неточный. Цветов не 16, а 15, так как черный цвет в ярком режиме остается неизменным.
Ты утверждаешь, что мог показать на экране 16 различных цветов?
Да, но с уточнением. На ZX Spectrum фактически 8 базовых цветов, и каждый из них мог быть либо обычным, либо ярким (bright), что делает 16 вариантов цвета.
Все цвета в этой палитре на 16 цветов разные?
Но чёрный bright = чёрный normal, то есть яркость чёрного не меняется. А остальные цвета bright действительно светлее обычных.
Итого: 16 вариантов, но фактически только 15 визуально различимых цветов.
Таки пришли к правильному ответу, но лишь благодаря серии наводящих вопросов. Если бы я не знал правильного ответа, то получил бы недостоверную информацию.
Сравним с DeepSeek:
Какое количество цветов может отображать компьютер ZX Spectrum?
Если коротко: одновременно на экране может отображаться 15 цветов.
Но чтобы понять всю специфику, нужно углубиться в детали.
Далее он описывает нюансы, но их опустим. Главное, что сходу был дан правильный ответ.
Теперь еще поспрашиваем ChatGPT:
А бордюр какие имел цвета, яркие или обычные?
На ZX Spectrum бордюр (граница экрана) мог иметь любой из 8 базовых цветов и также поддерживал бит яркости, то есть можно было выбрать обычный или яркий вариант.
Это неверный ответ, бордюр не поддерживал яркость.
Как поменять яркость бордюра из BASIC?
На ZX Spectrum в стандартном BASIC нет команды для изменения яркости бордюра. Бордюр всегда использует обычный цвет (normal); бит яркости (bright) применим только к атрибутным блокам внутри экрана, а не к регистру бордюра.
То есть бордюр не может быть ярким, его цвет ограничен базовыми 8 цветами.
То есть он сам себе противоречит, хотя только что говорил, что бордюр может быть ярким. И в очередной раз нейронка никак не поправляет свои предыдущие ошибочные ответы, даже если сама приходит к другому выводу. Надеюсь все же добавят режим перепроверки предыдущих ответов, чтобы они соответствовали новым ответам, либо признавалась ошибочность.
Посмотрим, что ответит DeepSeek:
А бордюр какие имел цвета, яркие или обычные?
Бордюр мог отображать только 8 цветов из палитры, причем только обычных, без контроля яркости.
Бинго!
Единственная претензия к DeepSeek, он менее корректно строит фразы, зачастую в ответе на русском проскакивают английские или китайские слова или некоторые слова используются в неподходящей форме. Тут у ChatGPT ситуация гораздо лучше, за ним подобного не замечал. Он предложения строит достаточно грамотно. Ну и у ChatGPT чуть больше возможностей, например, встроено построение изображений и можно использовать голосовой режим, прослушать ответы, чего нет в DeepSeek.
Однако по качеству самих ответов ChatGPT очевидным образом проигрывает DeepSeek...
Попробуйте так:
How many colours can the ZX Spectrum display?
Попробуйте так
Ответы:
The original ZX Spectrum (1982) could display **15 visible colours**.
Mechanics:
* The hardware has 8 base colours (black, blue, red, magenta, green, cyan, yellow, white).
* Each can be shown in normal or bright mode → 16 total combinations.
* But "bright black" is identical to normal black, so only 15 unique colours actually appear.
The ZX Spectrum can display 15 colours at any one time from a palette of 15, but it uses a unique attribute-based system that creates a complex and famous limitation.
Here’s the breakdown:
...
Ну да, так обе нейронки сходу дали правильны ответ. Но это не оправдывает того факта, что на русском ChatGPT нес пургу.
Насколько я понял, на русском имеет смысл задавать промпты только на тему программирования, тут для них без разницы, а если нужна какая-то текстовая информация, то лучше на английском, так как её несоизмеримо больше.
Ну это странно, потому что на сколько я понимаю логику работы нейронки, то внутренняя ассоциативная память вообще не привязана к языку общения. То есть внутри у нее как бы набор фактов, а на каком языке задать вопрос или написать ответ должно быть неважно. То есть нет такого, что если на русском нужной информации не найти, а на английском она есть, то нейронка при промптах на русском не сможет ответить.
Но надо бы проверить эту гипотезу. Надо найти такой вопрос, ответ на который отсутствует в русскоязычном сегменте интернета, но есть в англоязычном. Если она сможет дать правильный ответ, значит верно, внутреннее представление не привязано к языку. Наверное, тут надо искать какой-то узкий технический вопрос, который не был переведен на русский и доступен только в англоязычной документации.
P.S. Но то, что касается ZX Spectrum, то на русском есть по сути вся документация...
Qwen - самая плохая нейронка...
Решил на том же примере помучить еще одну нейронку - Qwen3-Coder:
Какое количество цветов может отображать компьютер ZX Spectrum?
Компьютер ZX Spectrum может отображать 8 основных цветов:
...
Эти цвета задаются с помощью цветовой палитры, встроенной в видеочип (ULA — Uncommitted Logic Array). Каждый цвет может также иметь два состояния яркости — нормальное и повышенное (bright), что даёт 16 оттенков в общей сложности, но при этом одновременно на экране могут использоваться только 8 цветов из этого набора.Таким образом, количество цветов, которое может отображать ZX Spectrum одновременно — 8, хотя общее число доступных комбинаций цвет/яркость — 16.
Он не только не упомянул про то, что различных цветов 15, а не 16, но и выдал неверную техническую информацию, что на экране можно использовать только 8 цветов из 16.
Все 16 цветов выглядят по-разному?
Да, **все 16 цветов выглядят по-разному** и визуально отличаются друг от друга.
Вот полный список цветов ZX Spectrum:
**При нормальной яркости:**
1. Черный (#000000)
2. Синий (#0000D7)
3. Красный (#D70000)
4. Пурпурный (#D700D7)
5. Зеленый (#00D700)
6. Голубой (#00D7D7)
7. Желтый (#D7D700)
8. Белый (#D7D7D7)**При повышенной яркости (bright):**
9. Черный (#000000) - остается таким же
10. Синий (#0000FF)
11. Красный (#FF0000)
12. Пурпурный (#FF00FF)
13. Зеленый (#00FF00)
14. Голубой (#00FFFF)
15. Желтый (#FFFF00)
16. Белый (#FFFFFF)Как видите, цвета с повышенной яркостью становятся более насыщенными и яркими. Особенно это заметно на цветных мониторах или телевизорах. Единственное исключение - черный цвет, который остается черным независимо от яркости.
Поэтому да, все 16 цветов действительно выглядят по-разному и визуально отличимы.
А в этом ответе имеем внутреннее противоречие. С одной стороны он говорит, что "черный цвет, который остается черным независимо от яркости" и тут же "все 16 цветов действительно выглядят по-разному и визуально отличимы"...
Раньше я возмущался, что нейронки не перепроверяют свои предыдущие ответы, и в новых ответах они могут противоречить тому, что говорили ранее, при этом никак это не замечая. Qwen же пошел еще дальше, он противоречит себе же в рамках одного ответа и не видит никаких проблем в этом.
Ну и еще вопросы:
А бордюр какие имел цвета, яркие или обычные?
Бордюр (border) на ZX Spectrum мог отображаться **всеми 16 цветами** - как обычными, так и яркими.
То есть бордюр мог быть:
- Одним из 8 основных цветов (нормальная яркость)
- Одним из 8 цветов с повышенной яркостью (bright)...
Причем цвет бордюра можно было менять программно с помощью команды `BORDER n`, где n - номер цвета от 0 до 7 (с возможностью включения яркости через атрибуты). Это давало программистам дополнительные возможности для создания визуальных эффектов, таких как цветовые переходы, плавные изменения освещения и т.д.
Таким образом, бордюр был полноцветным и мог использовать всю палитру из 16 цветов.
Совершенно некорректный ответ.
Как из BASIC задать цвет бордюра с включением яркости?
В BASIC ZX Spectrum цвет бордюра с включением яркости задается командой:
BORDER n
где n - номер цвета от 0 до 7 для обычной яркости, и от 8 до 15 для ярких цветов.
...
Таким образом, чтобы включить яркость, нужно просто использовать номер цвета от 8 до 15.
Короче, пошел галлюцинировать, сочиняя на ходу...
Попробуем к Qwen применить магию английского (в новом чате, чтобы не мешала история данного):
How many colours can the ZX Spectrum display?
The ZX Spectrum can display **8 colors**:
...
These colors were part of the standard palette used in most ZX Spectrum games and applications. The system used a relatively simple color scheme compared to later computers, which was partly due to cost constraints and the technology available at the time of its release in 1982.
Про яркие цвета тут он вообще забыл. В общем полный и безоговорочный провал.
Проверил другую модель: Qwen3-Next-80B-A3B.
Какое количество цветов может отображать компьютер ZX Spectrum?
Компьютер **ZX Spectrum** может отображать **15 цветов**.
...
- Таким образом:
- 7 цветов × 2 яркости = 14 цветов
- + 1 чёрный (без изменения яркости) = **15 цветов**### Важное ограничение:
Хотя всего доступно 15 цветов, **на одном экране одновременно можно использовать только 2 цвета на каждом 8×8 пиксельном блоке (атрибут)**. Это известное ограничение ZX Spectrum, приводящее к эффекту «цветового шума» или «attribute clash» — когда соседние объекты разных цветов конфликтуют из-за общей атрибуции.Таким образом, **всего 15 цветов**, но **максимум 2 цвета на 8×8 пиксельную область**.
Не, ну тут вопросов нет, ответ четкий и по делу.
А бордюр какие имел цвета, яркие или обычные?
Отличный вопрос! В ZX Spectrum **бордюр** (англ. *border*) — это рамка вокруг основного графического экрана — **имел только один цвет**, и этот цвет мог быть **любым из 15 доступных цветов**, включая как **обычные**, так и **яркие** варианты.
...
Я уже было обрадовался... Опять ошибка про бордюр, который не имел ярких цветов.
Как из BASIC задать цвет бордюра с включением яркости?
Чтобы задать цвет бордюра с яркостью в ZX Spectrum BASIC — используйте BORDER N, где N = основной цвет (0–7) + 8.
Яркие цвета: 9, 10, 11, 12, 13, 14, 15
Обычные цвета: 1, 2, 3, 4, 5, 6, 7
Чёрный: 0 или 8 — оба дают одинаковый результат
Опять насочинял...
Дался вам этот Спектрум! Лучше сравнивайте возможности по генерации кода.
Лучше сравнивайте возможности по генерации кода.
Такой вопрос: если нейронка не может однозначно ответить, сколько цветов в палитре, как она будет генерировать код? Я уже неоднократно сталкивался с галлюцинированием нейронок, когда, например, они в коде начинают использовать несуществующие методы или функции. Конечно для популярных платформ такое будет реже, а вот для узкоспециализированных прямо часто встречается. Спектрум как раз показывает этот пример (это не значит, что я буду под него генерировать код, но сам факт, документации в сети предостаточно, но нейронка сочиняет на ходу).
Ну и если нейронка сама себе противоречит в рамках одного ответа, то это уже говорит о системных проблемах. Пусть она сгаллюцинировала, но тогда до конца ответа должна придерживаться своей версии. Но если в начале ответа она говорит одно, в середине ответа сама же приходит к противоположному выводу, но под конец опять утверждает первоначальное, то это как?
сравнивайте возможности по генерации кода
Давайте сравним. Всем нейронкам зададим одну и туже задачу:
Напиши bat-файл, который запрашивает у пользователя значения a, b, c, а затем находит корни уравнения ax2+bx+c=0, рассмотрев все возможные случаи. Код снабди подробными комментариями.
Я не буду вникать в сам код, будем проверять его работоспособность на примерах.
ChatGPT
@echo off
:: Решение квадратного уравнения ax^2 + bx + c = 0
:: Все вычисления выполняются средствами CMD (set /a и команды if)
:: --- Ввод данных ---
set /p a=Введите a:
set /p b=Введите b:
set /p c=Введите c:
:: Проверка: если a=0, то это не квадратное уравнение
if %a%==0 (
echo Так как a=0, уравнение становится линейным: %b%x + %c% = 0
if %b%==0 (
if %c%==0 (
echo Уравнение имеет бесконечно много решений.
) else (
echo Уравнение не имеет решений.
)
) else (
set /a x=-%c%/%b%
echo Решение: x=%x%
)
goto :eof
)
:: --- Вычисление дискриминанта ---
:: D = b^2 - 4ac
set /a D=%b%*%b% - 4*%a%*%c%
echo Дискриминант D=%D%
:: --- Анализ дискриминанта ---
if %D% LSS 0 (
echo D < 0, действительных корней нет.
goto :eof
)
if %D%==0 (
:: Один корень: x = -b / (2a)
set /a x=-%b%/(2*%a%)
echo Один корень: x=%x%
goto :eof
)
:: --- Случай D > 0 ---
:: Нужно извлечь квадратный корень из D.
:: В CMD нет встроенного sqrt, используем вспомогательную функцию через PowerShell.
for /f %%k in ('powershell -command "[math]::Sqrt(%D%)"') do set sqrtD=%%k
echo Квадратный корень из D: %sqrtD%
:: Вычисление двух корней:
:: x1 = (-b + sqrt(D)) / (2a)
:: x2 = (-b - sqrt(D)) / (2a)
:: Для делений с плавающей точкой тоже используем PowerShell.
for /f %%x in ('powershell -command "(-%b% + %sqrtD%) / (2*%a%)"') do set x1=%%x
for /f %%x in ('powershell -command "(-%b% - %sqrtD%) / (2*%a%)"') do set x2=%%x
echo Два корня:
echo x1=%x1%
echo x2=%x2%
:eof
pause
Провал (см. скриншот):
DeepSeek
@echo off
chcp 1251 > nul
setlocal enabledelayedexpansion
:MAIN
echo.
echo ========================================
echo РЕШЕНИЕ КВАДРАТНОГО УРАВНЕНИЯ
echo ax^2 + bx + c = 0
echo ========================================
echo.
:INPUT_A
set /p "a=Введите коэффициент a: "
:: Проверка, что введено число
echo !a!|findstr /r "^[-]?[0-9]*[.,]?[0-9]*$" >nul
if errorlevel 1 (
echo Ошибка: введите число для коэффициента a
goto INPUT_A
)
:INPUT_B
set /p "b=Введите коэффициент b: "
echo !b!|findstr /r "^[-]?[0-9]*[.,]?[0-9]*$" >nul
if errorlevel 1 (
echo Ошибка: введите число для коэффициента b
goto INPUT_B
)
:INPUT_C
set /p "c=Введите коэффициент c: "
echo !c!|findstr /r "^[-]?[0-9]*[.,]?[0-9]*$" >nul
if errorlevel 1 (
echo Ошибка: введите число для коэффициента c
goto INPUT_C
)
:: Замена запятых на точки для корректных вычислений
set "a=!a:,=.!"
set "b=!b:,=.!"
set "c=!c:,=.!"
echo.
echo Решаем уравнение: !a!x^2 + !b!x + !c! = 0
echo.
:: Обработка случая, когда a = 0 (линейное уравнение)
if "!a!"=="0" (
echo ВНИМАНИЕ: коэффициент a = 0, уравнение становится линейным
echo Уравнение: !b!x + !c! = 0
echo.
if "!b!"=="0" (
if "!c!"=="0" (
echo Решение: x - любое число (бесконечное множество решений)
) else (
echo Решение: нет корней (уравнение не имеет смысла: 0*x + !c! = 0)
)
) else (
:: Вычисление корня линейного уравнения: x = -c/b
set /a "result_temp=-!c!*10000/!b!" 2>nul
set /a "result_int=!result_temp!/10000"
set /a "result_frac=!result_temp!%%10000"
if !result_frac! lss 0 set /a "result_frac=-!result_frac!"
echo Решение: x = !result_int!.!result_frac!
)
goto END
)
:: Вычисление дискриминанта: D = b^2 - 4ac
set /a "discriminant=!b!*!b! - 4*!a!*!c!" 2>nul
echo Дискриминант D = b^2 - 4ac = !discriminant!
echo.
:: Анализ дискриминанта
if !discriminant! lss 0 (
echo Дискриминант отрицательный (D < 0)
echo Решение: действительных корней нет
echo Комплексные корни:
set /a "real_part=-!b!/(2*!a!)" 2>nul
set /a "imag_part=sqrt(-!discriminant!)/(2*!a!)" 2>nul
echo x1 = !real_part! + !imag_part!i
echo x2 = !real_part! - !imag_part!i
) else if !discriminant! equ 0 (
echo Дискриминант равен нулю (D = 0)
:: Один корень: x = -b/(2a)
set /a "x=-!b!/(2*!a!)" 2>nul
echo Решение: один корень x = !x!
) else (
echo Дискриминант положительный (D > 0)
:: Два корня: x = (-b ± vD)/(2a)
set /a "sqrt_d=sqrt(!discriminant!)" 2>nul
set /a "x1=(-!b! + !sqrt_d!)/(2*!a!)" 2>nul
set /a "x2=(-!b! - !sqrt_d!)/(2*!a!)" 2>nul
echo Решение: два корня
echo x1 = !x1!
echo x2 = !x2!
)
:END
echo.
echo ========================================
choice /c YN /m "Хотите решить еще одно уравнение? (Y/N)"
if errorlevel 2 (
echo Программа завершена.
pause
exit
) else (
goto MAIN
)Провал на этапе ввода данных...
Qwen3-Coder
@echo off
:: Отключение вывода команд на экран для чистоты вывода
:: Запрашиваем у пользователя коэффициенты
set /p a=Введите коэффициент a:
set /p b=Введите коэффициент b:
set /p c=Введите коэффициент c:
:: Проверяем, что a не равен 0, иначе это не квадратное уравнение
if %a% == 0 (
echo Это не квадратное уравнение (a = 0).
goto linear
)
:: Вычисляем дискриминант: D = b^2 - 4ac
set /a discriminant = %b% * %b% - 4 * %a% * %c%
:: Выводим дискриминант для наглядности
echo Дискриминант D = %discriminant%
:: Проверяем значение дискриминанта
if %discriminant% GTR 0 (
:: Два различных вещественных корня
echo Уравнение имеет два различных вещественных корня.
:: Используем PowerShell для вычисления корней, так как BAT не поддерживает извлечение корня
for /f %%i in ('powershell -command "(-%b% + [Math]::Sqrt(%discriminant%)) / (2 * %a%)"') do set x1=%%i
for /f %%i in ('powershell -command "(-%b% - [Math]::Sqrt(%discriminant%)) / (2 * %a%)"') do set x2=%%i
echo x1 = %x1%
echo x2 = %x2%
) else if %discriminant% == 0 (
:: Один вещественный корень
echo Уравнение имеет один вещественный корень (дискриминант равен 0).
for /f %%i in ('powershell -command "(-%b%) / (2 * %a%)"') do set x=%%i
echo x = %x%
) else (
:: Комплексные корни
echo Уравнение имеет комплексные корни.
:: Вычисляем действительную и мнимую части
for /f %%i in ('powershell -command "(-%b%) / (2 * %a%)"') do set real=%%i
for /f %%i in ('powershell -command "[Math]::Sqrt(-%discriminant%) / (2 * %a%)"') do set imag=%%i
echo x1 = %real% + %imag%i
echo x2 = %real% - %imag%i
)
goto end
:: Обработка случая линейного уравнения (a = 0)
:linear
if %b% == 0 (
if %c% == 0 (
echo Уравнение имеет бесконечно много решений (0 = 0).
) else (
echo Уравнение не имеет решений (%c% = 0).
)
) else (
:: Линейное уравнение: bx + c = 0 => x = -c / b
echo Это линейное уравнение.
for /f %%i in ('powershell -command "(-%c%) / %b%"') do set x=%%i
echo x = %x%
)
:end
pauseПровал...
Claude:
@echo off
chcp 65001 >nul
REM Устанавливаем кодировку UTF-8 для корректного отображения русского текста
echo ========================================
echo Решение квадратного уравнения
echo ax² + bx + c = 0
echo ========================================
echo.
REM Запрашиваем коэффициенты у пользователя
set /p a="Введите коэффициент a: "
set /p b="Введите коэффициент b: "
set /p c="Введите коэффициент c: "
echo.
echo Уравнение: %a%x² + %b%x + %c% = 0
echo.
REM Проверяем особые случаи с помощью PowerShell
REM Так как bat работает только с целыми числами, используем PowerShell для вычислений
REM Случай 1: a = 0 (уравнение не квадратное)
powershell -Command "if (%a% -eq 0) { exit 1 } else { exit 0 }"
if %errorlevel%==1 (
REM a = 0, проверяем b
powershell -Command "if (%b% -eq 0) { exit 1 } else { exit 0 }"
if %errorlevel%==1 (
REM a = 0, b = 0, проверяем c
powershell -Command "if (%c% -eq 0) { exit 1 } else { exit 0 }"
if %errorlevel%==1 (
REM a = 0, b = 0, c = 0 - тождество 0 = 0
echo Результат: Уравнение является тождеством 0 = 0
echo Решение: x - любое действительное число
) else (
REM a = 0, b = 0, c ≠ 0 - противоречие
echo Результат: Уравнение не имеет решений
echo Получается противоречие: %c% = 0
)
) else (
REM a = 0, b ≠ 0 - линейное уравнение bx + c = 0
echo Это линейное уравнение: %b%x + %c% = 0
REM Вычисляем x = -c/b с помощью PowerShell
powershell -Command "$x = -(%c%) / (%b%); Write-Host ('Решение: x = ' + $x)"
)
goto end
)
REM Случай 2: a ≠ 0 (квадратное уравнение)
echo Решаем квадратное уравнение...
echo.
REM Вычисляем дискриминант и находим корни напрямую через PowerShell
powershell -Command ^
"$a = %a%; $b = %b%; $c = %c%; ^
$D = $b * $b - 4 * $a * $c; ^
Write-Host \"Дискриминант D = $D\"; ^
Write-Host ''; ^
if ($D -gt 0) { ^
$sqrtD = [Math]::Sqrt($D); ^
$x1 = (-$b + $sqrtD) / (2 * $a); ^
$x2 = (-$b - $sqrtD) / (2 * $a); ^
Write-Host 'Уравнение имеет два различных действительных корня:'; ^
Write-Host \"x₁ = $x1\"; ^
Write-Host \"x₂ = $x2\"; ^
} elseif ($D -eq 0) { ^
$x = -$b / (2 * $a); ^
Write-Host 'Уравнение имеет один корень (кратности 2):'; ^
Write-Host \"x = $x\"; ^
} else { ^
Write-Host 'Уравнение не имеет действительных корней'; ^
Write-Host '(дискриминант отрицательный)'; ^
Write-Host ''; ^
$realPart = -$b / (2 * $a); ^
$imagPart = [Math]::Sqrt(-$D) / (2 * $a); ^
Write-Host 'Комплексные корни:'; ^
Write-Host \"x₁ = $realPart + ${imagPart}i\"; ^
Write-Host \"x₂ = $realPart - ${imagPart}i\"; ^
}"
:end
echo.
echo ========================================
pauseМожно двойным кликом запускать.
Чтобы отправить ответ, вы должны войти или зарегистрироваться