[Logo] Форум DL
  [DL]  Back to home page 
Forum Index ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, ... 24, 25, 26, 27, 28, ... 30, 31, 32
Author Message
Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Виталий Коган:

Ошибка в тесте в задаче "Сортировка 2 чисел" (http://dl.gsu.by/task.jsp?nid=1092305&cid=860). По условию сказано, что сортировка идет по возрастанию, а в 5 тесте идет по убыванию.

[test 5]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0


IN0 dec[2]: 2000
IN1 dec[2]: 1

OUT0 dec[2]: 2000
OUT1 dec[2]: 1 

Тест исправлен, решение перетестировано.
Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Виталий Коган:

Ошибка в тестах в задаче "Друзья" (http://dl.gsu.by/task.jsp?nid=1092400&cid=860). Насколько я помню задачи с памятью, то когда говорится, что "берется значение из памяти", то значит берется значение, которое занеслось в предыдущем тесте. Тогда почему во многих тестах этой задачи на выходе вовсе не так? (привел один пример)

[test 1]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0

x dec[1]: 0
y dec[1]: 0
z dec[1]: 0

res dec[1]: 0

[test 2]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0


x dec[1]: 1
y dec[1]: 1
z dec[1]: 1

res dec[1]: 1

В задаче написано ,что если x+y>z, то вывести то значение, которое находится в памяти. Так вот в первом тесте в память заносится 0, а во втором выполняется условие x+y>z, но на выходе 1, а не 0. Может я чего-то не понимаю тут?Объясните пожалуйста. 

Тест исправлен, решение перетестировано.
Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Игорь Лопатин:

http://dl.gsu.by/task.jsp?nid=1082617&cid=859
ошибка в тесте, перепутана старшая разрядность с младшей. 

Сделал уточнение в условии задачи.
Vitaliy Kogan

Topics: 1
Messages: 189

My Profile


Игорь Коршунов:


Виталий Коган:

Ошибка в тестах в задаче "Друзья" (http://dl.gsu.by/task.jsp?nid=1092400&cid=860). Насколько я помню задачи с памятью, то когда говорится, что "берется значение из памяти", то значит берется значение, которое занеслось в предыдущем тесте. Тогда почему во многих тестах этой задачи на выходе вовсе не так? (привел один пример)

[test 1]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0

x dec[1]: 0
y dec[1]: 0
z dec[1]: 0

res dec[1]: 0

[test 2]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0


x dec[1]: 1
y dec[1]: 1
z dec[1]: 1

res dec[1]: 1

В задаче написано ,что если x+y>z, то вывести то значение, которое находится в памяти. Так вот в первом тесте в память заносится 0, а во втором выполняется условие x+y>z, но на выходе 1, а не 0. Может я чего-то не понимаю тут?Объясните пожалуйста. 

Тест исправлен, решение перетестировано. 

Ошибка ещё и в 7 тесте данной задачи, ввиду чего ошибка пошла и во всех тестах идущих ниже (т.к. 7+7<21, а значит мы должны все сложить и получить 35, а не 41)
[test 7]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0


x dec[1]: 7
y dec[1]: 7
z dec[1]: 21

res dec[1]: 41
Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Виталий Коган:


Игорь Коршунов:


Виталий Коган:

Ошибка в тестах в задаче "Друзья" (http://dl.gsu.by/task.jsp?nid=1092400&cid=860). Насколько я помню задачи с памятью, то когда говорится, что "берется значение из памяти", то значит берется значение, которое занеслось в предыдущем тесте. Тогда почему во многих тестах этой задачи на выходе вовсе не так? (привел один пример)

[test 1]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0

x dec[1]: 0
y dec[1]: 0
z dec[1]: 0

res dec[1]: 0

[test 2]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0


x dec[1]: 1
y dec[1]: 1
z dec[1]: 1

res dec[1]: 1

В задаче написано ,что если x+y>z, то вывести то значение, которое находится в памяти. Так вот в первом тесте в память заносится 0, а во втором выполняется условие x+y>z, но на выходе 1, а не 0. Может я чего-то не понимаю тут?Объясните пожалуйста. 

Тест исправлен, решение перетестировано. 

Ошибка ещё и в 7 тесте данной задачи, ввиду чего ошибка пошла и во всех тестах идущих ниже (т.к. 7+7<21, а значит мы должны все сложить и получить 35, а не 41)
[test 7]
Cycles = 1000
CheckCycles = false
Segment - 0
Offset - 0


x dec[1]: 7
y dec[1]: 7
z dec[1]: 21

res dec[1]: 41 

Тесты исправлены, решение перетестировано.
Ivan Starodubtsev

Topics: 2
Messages: 72

My Profile
Возможно, ошибка в секретном тесте задачи:
Экзамен\Индивидуальные задания\Программирование микроконтроллеров\Условные вычисления\27 - "Простые ветви" 42643

Проходят все тесты, кроме секретного. Код:

int __in __bits(16) x;
int __in __bits(16) y;

int __out __bits(16) res;

void main()
{
int t=0;
if ( x*y > 5 ){
t = x*x;
t = t + y - 5;
}
if ( x*y == 5 ){
t = 2*y;
t -= x;
}
if ( x+y < 5 ){
t = y*y;
t = t + x - 3;
}
res = t;
}
Vitaliy Kogan

Topics: 1
Messages: 189

My Profile
Михаил Семенович, можно узнать секретный тест к задаче "Двузначное число" (http://dl.gsu.by/task.jsp?nid=1089565&cid=860), т.к. все прошли, кроме него
Mihail Dolinskiy

Topics: 1985
Messages: 47286

My Profile
Report = report.txt
StopOnError = true
Statistics = true
WatchReport = true
ShowReport = true

[TEST1]
Cycles - 1000
CheckCycles - false
Segment - 0
Offset - 0


m dec: 99

res dec: 1

[TEST2]
Cycles - 1000
CheckCycles - false
Segment - 0
Offset - 0


m dec: 90

res dec: 0

[TEST3]
Cycles - 1000
CheckCycles - false
Segment - 0
Offset - 0


m dec: 121

res dec: 0

[TEST4]
Cycles - 1000
CheckCycles - false
Segment - 0
Offset - 0


m dec: 1

res dec: 0

[TEST5]
Cycles - 1000
CheckCycles - false
Segment - 0
Offset - 0


m dec: 33

res dec: 1
Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Иван Стародубцев:

Возможно, ошибка в секретном тесте задачи:
Экзамен\Индивидуальные задания\Программирование микроконтроллеров\Условные вычисления\27 - "Простые ветви" 42643

Проходят все тесты, кроме секретного. Код:

int __in __bits(16) x;
int __in __bits(16) y;

int __out __bits(16) res;

void main()
{
int t=0;
if ( x*y > 5 ){
t = x*x;
t = t + y - 5;
}
if ( x*y == 5 ){
t = 2*y;
t -= x;
}
if ( x+y < 5 ){
t = y*y;
t = t + x - 3;
}
res = t;


Основной тест дополнен.
Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Виталий Коган:

Михаил Семенович, можно узнать секретный тест к задаче "Двузначное число" (http://dl.gsu.by/task.jsp?nid=1089565&cid=860), т.к. все прошли, кроме него 

Основной тест дополнен.
Anna Korolyova

Topics: 0
Messages: 35

My Profile
Ошибка в тесте к задаче
[T6]: Тест не прошел: Размерность переменной RMAX должна быть 0 байт. 
http://dl.gsu.by/task.jsp?nid=1093213&cid=860 Индивидуальные задания\Программирование микроконтроллеров\Обработка строк (посложнее)\1 - "Максимальный и минимальный символ в строке"

[T6]
Cycles = 1000
CheckCycles = true
Segment - 0
Offset - 0


A str[2]:  TRR T  RSASASA X#

NMAX dec: 5
NMIN dec: 1
RMAX str: 
RMIN str: X



Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Анна Королёва:

Ошибка в тесте к задаче
[T6]: Тест не прошел: Размерность переменной RMAX должна быть 0 байт. 
http://dl.gsu.by/task.jsp?nid=1093213&cid=860 Индивидуальные задания\Программирование микроконтроллеров\Обработка строк (посложнее)\1 - "Максимальный и минимальный символ в строке"

[T6]
Cycles = 1000
CheckCycles = true
Segment - 0
Offset - 0


A str[2]:  TRR T  RSASASA X#

NMAX dec: 5
NMIN dec: 1
RMAX str: 
RMIN str: X



 

Тесты исправлены, решения перетестированы.
Ilya Schurok

Topics: 1
Messages: 66

My Profile
По порядку.

Умножитель - http://dl.gsu.by/task.jsp?nid=1090655&cid=860

Создать устройство умножающее одно четырёхбитное число (in_0 - in_3) на другое четырёхбитное число(in_4 - in_7).  
Порядок - как положено. Слева направо.
Читаем тесты.

In_0: 1
In_1: 1
In_2: 1
In_3: 1
In_4: 1
In_5: 1
In_6: 1
In_7: 1
Out_0: 1
Out_1: 0
Out_2: 0
Out_3: 0
Out_4: 0
Out_5: 1
Out_6: 1
Out_7: 1 


15*15 = 225 = 11100001b. Внезапно порядок вывода изменяется.
Хорошо, возможно, это тест на внимательность. Хотя мы не её развиваем на данном предмете. Отправляем в очередной раз задачу, читаем тесты.

in_0 dec[1]: 0
in_1 dec[1]: 1
in_2 dec[1]: 0
in_3 dec[1]: 1
in_4 dec[1]: 0
in_5 dec[1]: 1
in_6 dec[1]: 0
in_7 dec[1]: 1

out_0 dec[1]: 0
out_1 dec[1]: 0
out_2 dec[1]: 1
out_3 dec[1]: 0
out_4 dec[1]: 0
out_5 dec[1]: 1
out_6 dec[1]: 1
out_7 dec[1]: 0

5*5 = 25 (сверился с калькулятором).
25 = 11001 != 1100100 = 100
Внезапно.

===================================================

Cумма - http://dl.gsu.by/task.jsp?nid=1090674&cid=860

Постановка задачи:
Сравнить между собой две группы чисел. 1-я группа: a_1,a_2, 2-я группа: b_1, b_2.
После сравнения чисел имеем
1-я группа: cmp1, cmp2 и cmp3, 2-я группа: cmp4, cmp5 и cmp6.
Полученные результаты сложить.
Результат - sum1,p1, соответственно.  


Что есть cmp1, cmp2 cmp3, cmp4, cmp5 cmp6?
Я понимаю, что результаты сравнения, но как? ">=<","<=>","<>=","=><" или ещё что-нибудь?
Хорошо, не беда, подберём, не впервой.
Полученные результаты сложить. Результат - sum1,p1, соответственно. 

Сложить булевые значения - это XOR, если мне память не изменяет? Или OR ? А может, складывать надо (int)boolean ? А когда складывать будем, что ложить в sum1, а что - в p1? Первые три - вторые три, или как? Многовато вариантов для подбора. А вот решения, по-моему, ноль.


______________________
Жизнь - забытые следы чьей-то Глубины...
Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Илья Щурок:

По порядку.

Умножитель - http://dl.gsu.by/task.jsp?nid=1090655&cid=860

Создать устройство умножающее одно четырёхбитное число (in_0 - in_3) на другое четырёхбитное число(in_4 - in_7).  
Порядок - как положено. Слева направо.
Читаем тесты.

In_0: 1
In_1: 1
In_2: 1
In_3: 1
In_4: 1
In_5: 1
In_6: 1
In_7: 1
Out_0: 1
Out_1: 0
Out_2: 0
Out_3: 0
Out_4: 0
Out_5: 1
Out_6: 1
Out_7: 1 


15*15 = 225 = 11100001b. Внезапно порядок вывода изменяется.
Хорошо, возможно, это тест на внимательность. Хотя мы не её развиваем на данном предмете. Отправляем в очередной раз задачу, читаем тесты.

in_0 dec[1]: 0
in_1 dec[1]: 1
in_2 dec[1]: 0
in_3 dec[1]: 1
in_4 dec[1]: 0
in_5 dec[1]: 1
in_6 dec[1]: 0
in_7 dec[1]: 1

out_0 dec[1]: 0
out_1 dec[1]: 0
out_2 dec[1]: 1
out_3 dec[1]: 0
out_4 dec[1]: 0
out_5 dec[1]: 1
out_6 dec[1]: 1
out_7 dec[1]: 0

5*5 = 25 (сверился с калькулятором).
25 = 11001 != 1100100 = 100
Внезапно.
 

Добавил в условие уточнение какие биты являются младшими.
Igor Korshunov

Topics: 7
Messages: 2186

My Profile


Илья Щурок:


Cумма - http://dl.gsu.by/task.jsp?nid=1090674&cid=860

Постановка задачи:
Сравнить между собой две группы чисел. 1-я группа: a_1,a_2, 2-я группа: b_1, b_2.
После сравнения чисел имеем
1-я группа: cmp1, cmp2 и cmp3, 2-я группа: cmp4, cmp5 и cmp6.
Полученные результаты сложить.
Результат - sum1,p1, соответственно.  


Что есть cmp1, cmp2 cmp3, cmp4, cmp5 cmp6?
Я понимаю, что результаты сравнения, но как? ">=<","<=>","<>=","=><" или ещё что-нибудь?
Хорошо, не беда, подберём, не впервой.
Полученные результаты сложить. Результат - sum1,p1, соответственно. 

Сложить булевые значения - это XOR, если мне память не изменяет? Или OR ? А может, складывать надо (int)boolean ? А когда складывать будем, что ложить в sum1, а что - в p1? Первые три - вторые три, или как? Многовато вариантов для подбора. А вот решения, по-моему, ноль.
 

Переформулировал условие задачи.
 
Forum Index ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, ... 24, 25, 26, 27, 28, ... 30, 31, 32
Time:0,044