[Logo] Форум DL
  [DL]  На главную страницу 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, ... 6, 7, 8, 9, 10, ... 30, 31, 32
Автор Сообщение
Василий Писпанен

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

Мой профиль
Задача из контрольного среза
http://dl.gsu.by/task.jsp?nid=1113488&cid=860

Найти сумму положительных нечетных элементов массива.
Размер исходных данных и результатов по 1 байту.

Второй тест:
n sgn: 15
a sgn: 199 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1

199 выходит за рамки одного знакового байта.
Аналогично пятый тест: -251

=> пройти тесты нельзя

решение
int  __bits(8) a[15];
int __in __bits(8) n ;
int __out __bits(8) sum;
void main(){
	int i=0,k=0;
	while (i<n) {
		if(a[i]>0 && (a[i]%2!=0)) {
			k+=a[i];
		}
		i++;
	}
	sum=k;

}

Александр Поздняков

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

Мой профиль
Просьба проверить секретный тест для http://dl.gsu.by/task.jsp?nid=1113447&cid=860 (задача из контрольного среза).
Илья Щурок

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

Мой профиль
http://dl.gsu.by/task.jsp?nid=1111124&cid=860

Я понимаю, флеш-задания - вещь довольно простая. Особенно с выделением цветом "правильно/не правильно". Но в некоторых задачах банальный перебор - единственное решение. К примеру взять указанную выше. Да, задачу собрать можно, но явно не при наличии знаний побитовой обработки. В итоге, правильным оказался вариант:
(IN_0 | (IN_1 ^ IN_2) ^ IN_3) & (IN_0 | ~ IN_1); 

(IN_0 ^ IN_1) | (IN_2 & IN_3) | (~(IN_0) ^ IN_2) | (~OUT_1); 


Для того, чтобы понять, что "краснеют пробелы" там, где "должны быть" скобки возле побитовых отрицаний, потребовалась уйма времени, никак не сопостовимая с решением данной задачи. К слову, если верить Википедии (не поленился, сверился - не подводит ли меня моя память) у отрицания приоритет значительно выше, нежели у операций, стоящих возле него.

Я понимаю, что задание корректное по сути, но нельзя ли как-то доходчивее пояснять, какого стиля кода придерживался составитель флеша?
______________________
Жизнь - забытые следы чьей-то Глубины...
Виталий Коган

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

Мой профиль
Интересное наблюдение в задаче "Арифметика" (http://dl.gsu.by/task.jsp?nid=1088247&cid=860), где "В случае, когда А*В=С+1 на выход подается значение, которое находиться в памяти в данный момент". Так вот это значение соответсвует значению на входе B, т.е. если написать в конце RES = B, то все тесты будут пройдены, хотя на самом деле в конце должно быть просто RES;
if((A*B)<(C+1)){

RES = 0;
}
else if((A*B)>(C+1)){
RES = A*B-C;
}
else {
RES=B; - не правильно!!!
}

Недочет выявлен из собственного опыта на этой задаче

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

Темы: 7
Сообщений: 2186

Мой профиль


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

Интересное наблюдение в задаче "Арифметика" (http://dl.gsu.by/task.jsp?nid=1088247&cid=860), где "В случае, когда А*В=С+1 на выход подается значение, которое находиться в памяти в данный момент". Так вот это значение соответсвует значению на входе B, т.е. если написать в конце RES = B, то все тесты будут пройдены, хотя на самом деле в конце должно быть просто RES;
if((A*B)<(C+1)){

RES = 0;
}
else if((A*B)>(C+1)){
RES = A*B-C;
}
else {
RES=B; - не правильно!!!
}

Недочет выявлен из собственного опыта на этой задаче

 

Тест дополнен.
Игорь Коршунов

Темы: 7
Сообщений: 2186

Мой профиль


Александр Поздняков:

Просьба проверить секретный тест для http://dl.gsu.by/task.jsp?nid=1113447&cid=860 (задача из контрольного среза). 

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

Для строки нужно было зарезервировать больше символов.
Игорь Коршунов

Темы: 7
Сообщений: 2186

Мой профиль


Василий Писпанен:

Задача из контрольного среза
http://dl.gsu.by/task.jsp?nid=1113488&cid=860

Найти сумму положительных нечетных элементов массива.
Размер исходных данных и результатов по 1 байту.

Второй тест:
n sgn: 15
a sgn: 199 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1

199 выходит за рамки одного знакового байта.
Аналогично пятый тест: -251

=> пройти тесты нельзя

решение
int  __bits(8) a[15];
int __in __bits(8) n ;
int __out __bits(8) sum;
void main(){
	int i=0,k=0;
	while (i<n) {
		if(a[i]>0 && (a[i]%2!=0)) {
			k+=a[i];
		}
		i++;
	}
	sum=k;

}
 

Тесты исправлены, решения перетестированы.
Игорь Коршунов

Темы: 7
Сообщений: 2186

Мой профиль


Николай Процкий:

Ошибка в условии задачи (Индивидуальные задания\С-TCPU\Программы по схемам\Вычислить выражение\12 - "Простая арифметика" ) по условию res-16 бит...при проверки требует 1 байт.
Ошибка в условии задачи (Индивидуальные задания\С-TCPU\Программы\Условные вычисления\8 - "RES-функция) по условию res 2 байта...при проверки требует 1 байт.При изминении опять требует 2 байта.
Ошибка в условии и тесте задачи (Индивидуальные задания\С-TCPU\Программы\Условные вычисления\16 - "Вычисление выражения")...по условию a,b,RES размером два байта,c,d - байт при проверки трбует все переменные байт + при тестировании меняет размерность res c одного байта ны 2 и обратно. 

Тесты исправлены, решения перетестированы.
Игорь Кнышев

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

Мой профиль
http://dl.gsu.by/task.jsp?nid=1112263&cid=859
,ошибки в установке задачи
Михаил Долинский

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

Мой профиль
ЧТО именно не правильно?
И аргументы приведи
Игорь Коршунов

Темы: 7
Сообщений: 2186

Мой профиль


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

ЧТО именно не правильно?
И аргументы приведи 

Нашел только одну неточность. Вместо имени линии "0_15,1" используется "0_15.1". Я так понимаю, что формат position.txt не позволяет поставить запятую в нужном месте.
Игорь Кнышев

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

Мой профиль
При логическом умножении отсутствует возможность выбора -1,если я правильно понимаю.
Михаил Долинский

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

Мой профиль
Ты неправильно понимаешь, но я еще и не рассказывал - как раз на следующей лекции буду.

-1 в двоичном представлении в 16 разрядах - это 16 единиц, там есть такой выбор - 1_16 (в самой нижней конъюнкции).
Виталий Коган

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

Мой профиль
Ошибки в условии задачи "Простое выражение" (http://dl.gsu.by/task.jsp?nid=1091082&cid=860):
1)В самом начале условия написано "Вычислите q", а по итогу на выходе - z;
2)Во второй строчке системы идет умножение на i^2, а должно быть на j^2
3)Хорошо бы добавить в таблицу с входными переменными столбец "Тип переменной(вход/выход)"
Артур Драпеза

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

Мой профиль
Разность -
http://dl.gsu.by/task.jsp?nid=1090673&cid=860
при тестировании пишет, что переменная res должна быть 1 байт, а в условии 2 байта
 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, ... 6, 7, 8, 9, 10, ... 30, 31, 32
Time:0,042