[Logo] Форум DL
  [DL]  На главную страницу 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, 4, ... 25, 26, 27
Автор Сообщение
Кирилл Ханда

Темы: 1
Сообщений: 22

Мой профиль
Решил 3 задачи с помощью chatgpt. ссылка на ии - https://chat.openai.com/

ссылка на видео с разбором - https://www.youtube.com/watch?v=oJPQUBh7Mfs&ab_channel=Kirill

Так же после записи видео решил попробовать решить в этом же диалоге задачку со строками.


Я: Из заданной строки длиной 50 символов удалить все цифры, подсчитать количество и сумму удаленных цифр, заменить все заглавные латинские буквы на маленькие. Признак конца строки '#', в входной и выходной строках.

Формат ввода
str - исходная строка

Формат вывода
str1 - преобразованная строка
kol - количество удаленных цифр
sum - сумма удаленных цифр

Размер исходных данных и результатов 1 байт.
Пример ввода:
str=Mama124 MuLA 345rAMy!!!#
Пример вывода:
str1=mama mula ramy!!!#
kol=6
sum=19

Chatgpt:Вот пример программы на языке c-mpa, которая выполняет описанные вами действия:

char __in str[51]; // Максимальная длина строки 50 символов + символ конца строки
char __out str1[51];
unsigned __out kol;
unsigned __out sum;

void main()
{
// Инициализация переменных
kol = 0;
sum = 0;

// Индексы для итерации по строке
unsigned __bits(8) i = 0;
unsigned __bits(8) j = 0;

// Цикл обработки строки
while (str[i] != '#')
{
// Если текущий символ - цифра, увеличиваем счетчик и сумму
if (str[i] >= '0' && str[i] <= '9')
{
kol++;
sum += str[i] - '0';
}
// Если текущий символ - заглавная латинская буква, заменяем на строчную
else if (str[i] >= 'A' && str[i] <= 'Z')
{
str1[j] = str[i] + ('a' - 'A');
j++;
}
// Если текущий символ - не цифра и не заглавная латинская буква, оставляем как есть
else
{
str1[j] = str[i];
j++;
}

// Переходим к следующему символу
i++;
}

// Добавляем символ конца строки к преобразованной строке
str1[j] = '#';
}
В этом коде используются два указателя (i и j) для итерации по исходной строке (str) и создания преобразованной строки (str1). Программа подсчитывает количество и сумму удаленных цифр, а также заменяет заглавные латинские буквы на строчные. Результат сохраняется в переменных str1, kol и sum.

Я: строка не может иметь модификаторы __in и __out. переменные kol и sum должны быть 1 байт.

chatgpt: Прошу прощения за недоразумение. Вот исправленный код с переменными kol и sum объявленными как 1 байт:
char str[51]; // Максимальная длина строки 50 символов + символ конца строки
char str1[51];
char __out __bits(8) kol; // Используем char для размера 1 байт
char __out __bits(8) sum; // Используем char для размера 1 байт

void main()
{
// Инициализация переменных
kol = 0;
sum = 0;

// Индексы для итерации по строке
unsigned char i = 0;
unsigned char j = 0;

// Цикл обработки строки
while (str[i] != '#')
{
// Если текущий символ - цифра, увеличиваем счетчик и сумму
if (str[i] >= '0' && str[i] <= '9')
{
kol++;
sum += str[i] - '0';
}
// Если текущий символ - заглавная латинская буква, заменяем на строчную
else if (str[i] >= 'A' && str[i] <= 'Z')
{
str1[j] = str[i] + ('a' - 'A');
j++;
}
// Если текущий символ - не цифра и не заглавная латинская буква, оставляем как есть
else
{
str1[j] = str[i];
j++;
}

// Переходим к следующему символу
i++;
}

// Добавляем символ конца строки к преобразованной строке
str1[j] = '#';
}
Теперь переменные kol и sum объявлены как char, что соответствует размеру 1 байт.

С некоторыми пояснениями ии справился и со строками. Данная задача прошла тестирование.
Назар Говор

Темы: 0
Сообщений: 11

Мой профиль
Делюсь своим опытом решения задач с помощью ИИ.

ИИ решил 4 задачи на C-MPA. Ссылка на видео-разбор:

https://www.youtube.com/watch?v=UntMisztfns&ab_channel=monicagotdat

ИИ почти решил 2 задачи на ассемблере. Ссылка на видео-разбор:

https://www.youtube.com/watch?v=JcxnFf5Ooms&ab_channel=monicagotdat
Михаил Долинский

Темы: 1985
Сообщений: 47270

Мой профиль
Нет, это не годится по следующим причинам.

1. У нас нет цели научить бота решать наши задачи.
Наша цель - решить задачу, решения которой мы не знаем, с его помощью.

Соответственно, нужно выбирать задачу и потом, получая от него советы, пройти путь от условия задачи до сдачи её на DL.

2. Стиль объяснения, когда ты сначала всё сделал, а потом бегаешь по диалогу вверх - вниз тоже нам не подходит.
Надо просто
либо снимать диалог в реальном времени, выкладывать его и нам давать ссылку на него.
либо (что наверно предпочтительней) сохранить диалог например в файл (doc?) и нам дать ссылку на него,
а уж мы сами будем если нужно ходить вверх-вниз без твоего "навязчивого сервиса".

3. Если задачу решить удалось, прямо здесь на форуме сделать резюме, как лучше общаться с ботом, чтобы решить задачу.

4. Если задачу решить всё-таки не удалось - описать проблемы, которые не удалось разрешить и свои соображения по причинам.

В любом случае в сообщении на форуме должна быть прямая ссылка на задачу, которую ты пытался решать.

Не надо по 4 задачи, достаточно по ОДНОЙ каждого типа:
- С-МПА
- ассемблер
- HLCCAD (можно просить его представить решение в логических элементах на яpыке Verilоg или VHDL)
А потом самостоятельно перенести решение из текстового представления в графическое в HLCCAD (какие элементы взять и как соединить).
И сдать проект на DL. Или хотя бы пытаться сдавать его на DL и анализировать результаты для продолжения диалога с ботом.
Назар Говор

Темы: 0
Сообщений: 11

Мой профиль
Делюсь своим опытом решения задач с помощью ИИ.
Решение задачи на C-MPA:
Ссылка на задачу: https://dl.gsu.by/task.jsp?nid=2286000&cid=1335
Ссылка на гугл документ со всем диалогом: https://docs.google.com/document/d/1MEw0zRvfQSCj2NMaGVE8XEgGN_DbVJ86Z0ixH55dBcg/edit?usp=sharing
Для того чтобы начать решать задачи с помощью ИИ нужно его обучить и показать практические примеры решения. Я показал немного теории по C-MPA и затем показал решение задачи чтобы GPT понял в чем отличия C от C-MPA. Затем я попросил решить его задачу, он выдал решение, но с ошибкой в объявлении массива, я указал на эту ошибку, он исправил и задача прошла тестирование.

Решение задачи на ассмблере:
Ссылка на задачу отсутствует так как я пытался решить простое действие a*c+b*d
Ссылка на гугл документ со всем диалогом: https://docs.google.com/document/d/1H0liPAz_PivOZCG2M-IXTlIGHNLm0JBE84vO28mSJ4A/edit?usp=sharing
Так же как и с C-MPA я показал немного теории(основных правил при решении задач) на ассемблере 8086, затем я показал два примера решения задач чтобы он увидел как правильно решать задачи, затем я попросил его решить выражение a*с+b*d чтобы удостовериться что он может выполнять простые математические действия, к сожалению он выдал неправильное решение, он плохо понял как работает умножение и расширение регистра al, я ему указал на его ошибки, но он снова не смог выдать верное решение, я попросил его сделать это еще 2 раза, но к сожалению ничего не получилось, более сложную задачу брать я не увидел смысла так, как ИИ не справился с простыми математическими действиями.

Решение задачи на HLCCAD:
Ссылка на задачу: https://dl.gsu.by/task.jsp?nid=2285115&cid=1335
Ссылка на гугл документ со всем диалогом: https://docs.google.com/document/d/13wCSuoQcSTGVi2sLbKZV1lvoPznZ-nVoGNbcrZSJDok/edit?usp=sharing
Спросив у GPT знает ли он что-то об HLCCAD он ответил отрицательно, и я решил спросить это у Google Bard и ответ был положительным(видимо потому что у Bard открытый доступ в интернет). Я спросил сможет ли он помочь мне решить задачу на HLCCAD и он попытался даже составить схему в текстовом виде, но с одной ошибкой, я указал ему на ошибку и он её успешно исправил, он объяснил ход решения задачи и рассказал какие компоненты нужно использовать, так же Bard оставил ссылку на форум DL в котором обсуждается эта задача.
Михаил Долинский

Темы: 1985
Сообщений: 47270

Мой профиль


Кирилл Ханда:

Решил 3 задачи с помощью chatgpt. ссылка на ии - https://chat.openai.com/

ссылка на видео с разбором - https://www.youtube.com/watch?v=oJPQUBh7Mfs&ab_channel=Kirill
 
С-МПА принято, осталось сделать ассемблер и HLCCAD.

Просьба не выкладывать диалог в форум - получается очень не читабельно.
Чтобы не возиться с читабельностью на форуме можно либо делать полную видео-запись диалога,
либо его копию в DOC-файл, который выкладывается в Инет, а в форуме делается ссылка на него.

Для ассемблера выбрать одну из задач на одну из тем

ОС. Обработка строк
1М. Одномерный массив
ЦЧ. Цифры числа

И попытаться пройти до сдачи решения на DL.
Не бот должен сдать, а Вы с его помощью.

Для HLCCAD выбрать одну из задач на одну из тем

КС. Комбинационные схемы
ПА. Схемы с памятью

И попытаться пройти до сдачи решения на DL.
Не бот должен сдать, а Вы с его помощью.

Для решения задач на проектирование схем можно просить решить задачу
на функционально-логическом (не поведенческом - behavioral) варианте языка VHDL или Verilog .
Яковцев с Луцкиным сделали это с моей подачи и смогли понять и переделать схему в HLCCAD.

Говор указал, что https://bard.google.com/?hl=ru лучше готов решать задачи на проектирование.
И даже что-то знает об HLCCAD.
Можно попробовать там.
Михаил Долинский

Темы: 1985
Сообщений: 47270

Мой профиль


Назар Говор:

Делюсь своим опытом решения задач с помощью ИИ.
Решение задачи на C-MPA:
Ссылка на задачу: https://dl.gsu.by/task.jsp?nid=2286000&cid=1335
Ссылка на гугл документ со всем диалогом: https://docs.google.com/document/d/1MEw0zRvfQSCj2NMaGVE8XEgGN_DbVJ86Z0ixH55dBcg/edit?usp=sharing
Для того чтобы начать решать задачи с помощью ИИ нужно его обучить и показать практические примеры решения. Я показал немного теории по C-MPA и затем показал решение задачи чтобы GPT понял в чем отличия C от C-MPA. Затем я попросил решить его задачу, он выдал решение, но с ошибкой в объявлении массива, я указал на эту ошибку, он исправил и задача прошла тестирование.

Решение задачи на ассмблере:
Ссылка на задачу отсутствует так как я пытался решить простое действие a*c+b*d
Ссылка на гугл документ со всем диалогом: https://docs.google.com/document/d/1H0liPAz_PivOZCG2M-IXTlIGHNLm0JBE84vO28mSJ4A/edit?usp=sharing
Так же как и с C-MPA я показал немного теории(основных правил при решении задач) на ассемблере 8086, затем я показал два примера решения задач чтобы он увидел как правильно решать задачи, затем я попросил его решить выражение a*с+b*d чтобы удостовериться что он может выполнять простые математические действия, к сожалению он выдал неправильное решение, он плохо понял как работает умножение и расширение регистра al, я ему указал на его ошибки, но он снова не смог выдать верное решение, я попросил его сделать это еще 2 раза, но к сожалению ничего не получилось, более сложную задачу брать я не увидел смысла так, как ИИ не справился с простыми математическими действиями.

Решение задачи на HLCCAD:
Ссылка на задачу: https://dl.gsu.by/task.jsp?nid=2285115&cid=1335
Ссылка на гугл документ со всем диалогом: https://docs.google.com/document/d/13wCSuoQcSTGVi2sLbKZV1lvoPznZ-nVoGNbcrZSJDok/edit?usp=sharing
Спросив у GPT знает ли он что-то об HLCCAD он ответил отрицательно, и я решил спросить это у Google Bard и ответ был положительным(видимо потому что у Bard открытый доступ в интернет). Я спросил сможет ли он помочь мне решить задачу на HLCCAD и он попытался даже составить схему в текстовом виде, но с одной ошибкой, я указал ему на ошибку и он её успешно исправил, он объяснил ход решения задачи и рассказал какие компоненты нужно использовать, так же Bard оставил ссылку на форум DL в котором обсуждается эта задача. 
C-MPA и HLCCAD приняты, ассемблер нет.
Про проблемы с умножением написал ещё Михалёв, а потом Новиков, нужна новая информация.

Для ассемблера выбрать одну из задач на одну из тем

ОС. Обработка строк
1М. Одномерный массив
ЦЧ. Цифры числа

И попытаться пройти до сдачи решения на DL.
Не бот должен сдать, а Вы с его помощью.
Александр Санец

Темы: 0
Сообщений: 15

Мой профиль
Нами(Мельникова Светлана и Санец Александр, ПО-21) была проведена работа с двумя общедоступными нейросетями: Pое.com, You.com
Мы проверяли их на возможность помощи студентам в решении задач на C-MPA(как логические, так и арифметические). Ссылка на нашу работу: https://docs.google.com/document/d/16Ak6DAzHea8ffc-ZG9sPLUlcQVrnwEoKaf7LATGkrqo/edit?usp=sharing
Нейросети делают незначительные ошибки, однако их легко заметить и исправить.
Михаил Долинский

Темы: 1985
Сообщений: 47270

Мой профиль
Я зачёл работу УСЛОВНО.
Мы договаривались, что Вы сделаете ТЕКСТОВЫЙ ФАЙЛ с описанием особенностей С-МПА и примерами задач и решений,
копируя который боту, можно затем получать решения нужных задач.
Его нужно выложить где-то, а здесь дать ссылку на него.

Можно сделать два файла - по типам задач
- логические функции
- цифры числа

Жду эти файлы (или один файл - на Ваше усмотрение).

Следующий студент попробует воспользоваться Вашим файлом и сообщит результат.
Евгений Яковцев

Темы: 0
Сообщений: 24

Мой профиль
Я хотел бы поделиться некоторыми советами о том, как максимально эффективно использовать взаимодействие с чат-ботом в учебных целях:
Будьте конкретны в своих вопросах: чем конкретнее ваш вопрос, тем более целенаправленным будет ответ чат-бота. Если вы спрашиваете о конкретной возможности или функции языка программирования, постарайтесь предоставить как можно больше подробностей о том, чего вы пытаетесь достичь, или о проблемах, с которыми вы сталкиваетесь.

Приведите примеры кода. Если вы работаете над фрагментом кода и у вас возникли проблемы с ним, поделитесь кодом с чат-ботом.
Поймите ограничения чат-бота: хотя чат-бот и является мощным инструментом, он не идеален.
Чат часто использует функционал которого не существует в языке, не пытайтесь сказать, что это неправильно, попытайтесь заменить его конструкцию на свою и попросить использовать её вместо той функции которой нет.

Например данная ошибка с расширением переменных и перемещением памяти:
Ошибка byte ptr Y нет в данной модификации языка
mov al, byte ptr Y
Мне пришлось заменить данную конструкцию на следующую:
mov al, Y
cbw
add ax, A9 ; Y+A9 is stored in ax
mov bx, X
в Дополнении чат не знал о функциях расширениях кроме cbw пришлось объяснить ему, что существую другие функции.

Помните, что цель чат-бота — помочь и облегчить ваш процесс обучения.
Он не решил данную задачу, но он предоставил базу задачи и объяснил как она работает. После чего я её доработал.
Так же он может посоветовать как лучше упростить ту или иную конструкцию:

Ссылка на источник чата:
https://docs.google.com/document/d/1goZajfWUkfdm72v-S252SwXyUTdlaZ6KjhNOUAy2_3M/edit?usp=sharing

Ссылка на условие задачи:
https://dl.gsu.by/task.jsp?nid=2285821&cid=1335
Евгений Яковцев

Темы: 0
Сообщений: 24

Мой профиль
Диалог с AI phind для помощи в решении задачи в HLCCAD: https://docs.google.com/document/d/1L0gnqnhwpIn0BpnAU8HLOmcMr2ghJ663zabh3d6dF5Q/edit?usp=sharing

Я не помнил, как решаются задачи по таблицам истинности с помощью HLCCAD, поэтому я решил попросить помощи у AI.

Главный итог: считаю, что максимум, который можно получить от чата это предоставление смысла решения задачи, которое можно применить в HLCCAD, если вы знаете о всех его особенностях, включая компоненты.

В файле который предоставлен по ссылке, есть фотография решения.

Также можно посоветоваться у чата на счет логического решения задачи.Например, вы можете просто не знать некоторых конструкций и методик работы с битовыми последовательностями.

На основе его идеи можно придумать мультиплексор, с помощью него можно решать ограниченное множество задач, такие задачи можно решить к примеру в C через IF. (Тоесть у нас есть ограниченное множество возможных решений)

Ссылка на условие задачи:
https://dl.gsu.by/task.jsp?nid=2293082&cid=1335
https://dl.gsu.by/task.jsp?nid=2300882&cid=1336

Михаил Долинский

Темы: 1985
Сообщений: 47270

Мой профиль


Евгений Яковцев:

Я хотел бы поделиться некоторыми советами о том, как максимально эффективно использовать взаимодействие с чат-ботом в учебных целях:
Будьте конкретны в своих вопросах: чем конкретнее ваш вопрос, тем более целенаправленным будет ответ чат-бота. Если вы спрашиваете о конкретной возможности или функции языка программирования, постарайтесь предоставить как можно больше подробностей о том, чего вы пытаетесь достичь, или о проблемах, с которыми вы сталкиваетесь.

Приведите примеры кода. Если вы работаете над фрагментом кода и у вас возникли проблемы с ним, поделитесь кодом с чат-ботом.
Поймите ограничения чат-бота: хотя чат-бот и является мощным инструментом, он не идеален.
Чат часто использует функционал которого не существует в языке, не пытайтесь сказать, что это неправильно, попытайтесь заменить его конструкцию на свою и попросить использовать её вместо той функции которой нет.

Например данная ошибка с расширением переменных и перемещением памяти:
Ошибка byte ptr Y нет в данной модификации языка
mov al, byte ptr Y
Мне пришлось заменить данную конструкцию на следующую:
mov al, Y
cbw
add ax, A9 ; Y+A9 is stored in ax
mov bx, X
в Дополнении чат не знал о функциях расширениях кроме cbw пришлось объяснить ему, что существую другие функции.

Помните, что цель чат-бота — помочь и облегчить ваш процесс обучения.
Он не решил данную задачу, но он предоставил базу задачи и объяснил как она работает. После чего я её доработал.
Так же он может посоветовать как лучше упростить ту или иную конструкцию:

Ссылка на источник чата:
https://disk.yandex.ru/d/6i1HB6ZDMaa_nw
 
Пока незачёт
1. Надо указать какую задачу решал (привести ссылку на задачу)
2. Надо переложить файл доки так, чтобы он открывался по одному клику
Михаил Долинский

Темы: 1985
Сообщений: 47270

Мой профиль


Евгений Яковцев:

Диалог с AI phind для помощи в решении задачи в HLCCAD: https://disk.yandex.ru/i/rwLPyl5ILEu7Ug

Я не помнил, как решаются задачи по таблицам истинности с помощью HLCCAD, поэтому я решил попросить помощи у AI.

Главный итог: считаю, что максимум, который можно получить от чата это предоставление смысла решения задачи, которое можно применить в HLCCAD, если вы знаете о всех его особенностях, включая компоненты.

Также можно посоветоваться у чата на счет логического решения задачи.Например, вы можете просто не знать некоторых конструкций и методик работы с битовыми последовательностями. 
Незачёт, надо добавить
- ссылку на условие
- вывод что задачи с таблицами истинности с подачи ИИ можно решать мультиплексорами
- и приведи рисунок схемы с мультиплексором - решения задачи
Александр Санец

Темы: 0
Сообщений: 15

Мой профиль


Михаил Долинский:

Я зачёл работу УСЛОВНО.
Мы договаривались, что Вы сделаете ТЕКСТОВЫЙ ФАЙЛ с описанием особенностей С-МПА и примерами задач и решений,
копируя который боту, можно затем получать решения нужных задач.
Его нужно выложить где-то, а здесь дать ссылку на него.

Можно сделать два файла - по типам задач
- логические функции
- цифры числа

Жду эти файлы (или один файл - на Ваше усмотрение).

Следующий студент попробует воспользоваться Вашим файлом и сообщит результат. 


Вот файл-помощник: https://docs.google.com/document/d/1XXIAJYC_deoJLiGpabzlk4ZSf6OXnxAs5N5PJO5IrU8/edit?usp=sharing
Используемые чат-боты : https://you.com/ и https://poe.com/
Александр Сохор

Темы: 0
Сообщений: 18

Мой профиль


Александр Санец:


Михаил Долинский:

Я зачёл работу УСЛОВНО.
Мы договаривались, что Вы сделаете ТЕКСТОВЫЙ ФАЙЛ с описанием особенностей С-МПА и примерами задач и решений,
копируя который боту, можно затем получать решения нужных задач.
Его нужно выложить где-то, а здесь дать ссылку на него.

Можно сделать два файла - по типам задач
- логические функции
- цифры числа

Жду эти файлы (или один файл - на Ваше усмотрение).

Следующий студент попробует воспользоваться Вашим файлом и сообщит результат. 


Вот файл-помощник: https://docs.google.com/document/d/1XXIAJYC_deoJLiGpabzlk4ZSf6OXnxAs5N5PJO5IrU8/edit?usp=sharing
Используемые чат-боты : https://you.com/ и https://poe.com/
 


классная методичка
Александр Дудинский

Темы: 0
Сообщений: 17

Мой профиль
Контрольные срезы\28 ноября\Базовый\C-МПА\6 - "Задача №6" 101449 Илясов Артем
в новом окне (Установлена: 23.10.2010)

http://dl.gsu.by/task.jsp?nid=2351291&cid=1336

Прошло сгенерированное решение

int __in __bits(16) a;
int __in __bits(16) b;
int __in __bits(8) c;
int __in __bits(8) d;
int __out __bits(16) RES;

void main() {
    if (b == -c) {
        RES = -a * b - c * d + a / c + b / d;
    } else {
        RES = (a + b) * a * b * c * d / (c - d);
    }
}

 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, 4, ... 25, 26, 27
Time:0,071