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

Topics: 6
Messages: 1531

My Profile


Александр Ковальчук:

Экзамен\Индивидуальные задания\Сконвертированные задания на программирование\Простые устройства с памятью\2 - "Арифметика"
http://dl.gsu.by/task.jsp?nid=1760013&cid=1099

На сервере не проходит тест 7, хотя у меня локально проходит все тесты и вовремя. Что бы это могло быть?

int __in __bits(2) A;
int __in __bits(2) B;
int __in __bits(2) C;
int __out __bits(8) RES;
int __bits(8) k;

void main() {
	unsigned __bits(2) mya = A;
	unsigned __bits(2) myb = B;
	unsigned __bits(2) myc = C;
	if (mya * myb < myc + 1) {
		k = 0;
	} else if (mya * myb > myc + 1) {
		k = mya * myb - myc;
	}
	RES = k;
}
 

1. Переменные должны быть объявлены как unsigned.
2. Промежуточные переменные должны быть большей размерности (например, 1 байт), чтобы не было переполнения.
Igor Korshunov

Topics: 6
Messages: 1531

My Profile

Как изменить шрифт в редакторе WInter?
 

В редакторе нажимаем правую кнопку мыши, выбираем "Свойства...", переходим на вторую вкладку "Выделение (цветом)".
Здесь можно изменить шрифт и его размер.
Bogdan Savelev

Topics: 0
Messages: 8

My Profile
При запуске CMPA.bat в каталоге D:\Program Files выпадает ошибка "Не удается найти D:\Program. Проверьте правильно ли указано имя и повторите попытку".

Содержимое CMPA.bat:

set WRKDIR=D:\olymp
md %WRKDIR%
@cd %WRKDIR%
@if errorlevel 1 goto wrong_dir

if not exist %WRKDIR%\src.mpc copy %~dp0bin\src.mpc %WRKDIR%\src.mpc
copy /y %~dp0bin\MPAc.WID %WRKDIR%\MPAc.WID
start %~dp0bin\WInter.exe %WRKDIR%\MPAc.WID --student
exit

:wrong_dir
@echo Не удалось создать папку %WRKDIR%
@echo --------------------------------------------------------------
@echo - Измените рабочую папку на другую в первой строке bat-файла -
@echo --------------------------------------------------------------

@pause
Aleksandr Gorodkov

Topics: 0
Messages: 13

My Profile
Содержимое CMPA.bat:
set WRKDIR=C:\projects\winter
md %WRKDIR%
@cd %WRKDIR%
@if errorlevel 1 goto wrong_dir

if not exist %WRKDIR%\src.mpc copy %~dp0bin\src.mpc %WRKDIR%\src.mpc
copy /y %~dp0bin\MPAc.WID %WRKDIR%\MPAc.WID
start %~dp0bin\WInter.exe %WRKDIR%\MPAc.WID --student
exit

:wrong_dir
@echo Не удалось создать папку %WRKDIR%
@echo --------------------------------------------------------------
@echo - Измените рабочую папку на другую в первой строке bat-файла -
@echo --------------------------------------------------------------

@pause

После изменения WRKDIR на мой Winter открывается на директории D:\olymp(хотя у меня даже диска D: нет). При попытке сохранить файл ошибка "Не удается сохранить файл".
Скриншот проблемы -> https://ibb.co/gjf7XCx
Oleg Guzanov

Topics: 0
Messages: 10

My Profile
Аналогично посту выше на моей машине отсутствует каталог D:. Полагаю, что указано расположение файла по умолчанию. Решается указанием места расположения собственного файла в меню "Файл - Создать".
Dmitriy Obraztsov

Topics: 0
Messages: 7

My Profile
Вопрос:
Почему не верно
char __in str[64];
Ответ:
Верно
char str[64];

Igor Korshunov

Topics: 6
Messages: 1531

My Profile


Богдан Савельев:

При запуске CMPA.bat в каталоге D:\Program Files выпадает ошибка "Не удается найти D:\Program. Проверьте правильно ли указано имя и повторите попытку".

Содержимое CMPA.bat:

set WRKDIR=D:\olymp
md %WRKDIR%
@cd %WRKDIR%
@if errorlevel 1 goto wrong_dir

if not exist %WRKDIR%\src.mpc copy %~dp0bin\src.mpc %WRKDIR%\src.mpc
copy /y %~dp0bin\MPAc.WID %WRKDIR%\MPAc.WID
start %~dp0bin\WInter.exe %WRKDIR%\MPAc.WID --student
exit

:wrong_dir
@echo Не удалось создать папку %WRKDIR%
@echo --------------------------------------------------------------
@echo - Измените рабочую папку на другую в первой строке bat-файла -
@echo --------------------------------------------------------------

@pause 

Нужно установить в папку без пробелов в пути, или модифицировать батник взяв все пути в кавычки.
Igor Korshunov

Topics: 6
Messages: 1531

My Profile


Александр Городков:

Содержимое CMPA.bat:
set WRKDIR=C:\projects\winter
md %WRKDIR%
@cd %WRKDIR%
@if errorlevel 1 goto wrong_dir

if not exist %WRKDIR%\src.mpc copy %~dp0bin\src.mpc %WRKDIR%\src.mpc
copy /y %~dp0bin\MPAc.WID %WRKDIR%\MPAc.WID
start %~dp0bin\WInter.exe %WRKDIR%\MPAc.WID --student
exit

:wrong_dir
@echo Не удалось создать папку %WRKDIR%
@echo --------------------------------------------------------------
@echo - Измените рабочую папку на другую в первой строке bat-файла -
@echo --------------------------------------------------------------

@pause

После изменения WRKDIR на мой Winter открывается на директории D:\olymp(хотя у меня даже диска D: нет). При попытке сохранить файл ошибка "Не удается сохранить файл".
Скриншот проблемы -> https://ibb.co/gjf7XCx
 

После запуска нужно создать новый файл (Файл->Создать...) или открыть уже имеющийся (Файл->Открыть как проект...).
После чего сохранить десктоп (Десктоп->Сохранить).
После этого скопировать MPAc.wid из рабочей папки в папку bin (перезаписав неправильно настроенный старый).

После этого все должно открываться правильно.
Igor Korshunov

Topics: 6
Messages: 1531

My Profile


Дмитрий Образцов:

Вопрос:
Почему не верно
char __in str[64];
Ответ:
Верно
char str[64];
 

Идеологически в МПА-С на входе не должно быть массивов, но задачи на программирование можно сдавать, если убрать модификатор __in.
 
Forum Index ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем 1, 2, 3, ... 17, 18, 19
Time:0,062