Forum I Roku Informatyki UW

Zadanie 2

Go down

Zadanie 2

Post by Heniek on Tue Oct 18, 2011 9:12 pm

Mam pytanie odnośnie metody tworzącej kolejki:
Wykonujemy ciąg instrukcji:
tworzymy kolejkę -> zostaje jej przydzielony numer 1
tworzymy kolejkę -> zostaje jej przydzielony numer 2
usuwamy kolejkę (1)
tworzymy kolejkę -> jaki numer jej przydzielic ??
numer 1 czy numer 3

Heniek

Liczba postów : 329
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 2

Post by kw on Tue Oct 18, 2011 10:27 pm

obojętnie jaki byle nie zajęty.

kw

Liczba postów : 62
Join date : 2010-11-25

View user profile

Back to top Go down

Re: Zadanie 2

Post by Mistrz on Wed Oct 19, 2011 4:26 pm

Jak zrobić, żeby od samego początku istniała kolejka o identyfikatorze 0? Czy można zrobić to jakoś w ten sposób, że ona będzie tworzona w cfifo.h? Jeśli tak, to jak?
avatar
Mistrz

Liczba postów : 43
Join date : 2010-10-12
Age : 26
Skąd : Bydgoszcz

View user profile

Back to top Go down

Re: Zadanie 2

Post by jodelek on Wed Oct 19, 2011 6:46 pm

Brzydki sposób to np. globalny boolean i jeśli kolejka 0 nie była stworzona, to przy wywołaniu dowolnej procedury/funkcji tworzymy ją. Da się ładniej, ale to już trzeba sobie poczytać. Było na PO.
avatar
jodelek

Liczba postów : 68
Join date : 2010-10-27
Age : 26

View user profile

Back to top Go down

Re: Zadanie 2

Post by Gricha on Wed Oct 19, 2011 6:53 pm

ladnie prosto i przyjemnie:

definicja funkcji

extern "C" {

tutaj wywolujesz jakas funkcje ktora ma zainicjalizowac to co tam chcesz zainicjalizowac

}

avatar
Gricha

Liczba postów : 425
Join date : 2010-10-12
Age : 26
Skąd : Myszków

View user profile

Back to top Go down

Re: Zadanie 2

Post by Mistrz on Wed Oct 19, 2011 9:20 pm

Dzięki Smile
avatar
Mistrz

Liczba postów : 43
Join date : 2010-10-12
Age : 26
Skąd : Bydgoszcz

View user profile

Back to top Go down

Re: Zadanie 2

Post by Heniek on Fri Oct 21, 2011 9:11 pm

Co się powinno dziać w przypadku próby usunięcia kolejki 0 i debug_level równym 0. Zakładam, że nie wolno nam pozwolić na usunięcie tej koleki, ale jednoczesnie nie powinniśmy o niczym informowac uzytkownika

Heniek

Liczba postów : 329
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 2

Post by Gricha on Fri Oct 21, 2011 10:22 pm

runtime error. zabic program
avatar
Gricha

Liczba postów : 425
Join date : 2010-10-12
Age : 26
Skąd : Myszków

View user profile

Back to top Go down

Re: Zadanie 2

Post by Mistrz on Fri Oct 21, 2011 10:54 pm

Problem mało istotny:
Myślicie, że komunikaty diagnostyczne mają mieć dokładnie taką formę i treść jak w podanym na moodle przykładzie? Nie sądzicie, że pisze się "popped", a nie "poped"? Smile
avatar
Mistrz

Liczba postów : 43
Join date : 2010-10-12
Age : 26
Skąd : Bydgoszcz

View user profile

Back to top Go down

Re: Zadanie 2

Post by Gricha on Fri Oct 21, 2011 11:12 pm

My daliśmy komunikaty takie same Smile No popped jest poprawne Smile
avatar
Gricha

Liczba postów : 425
Join date : 2010-10-12
Age : 26
Skąd : Myszków

View user profile

Back to top Go down

Re: Zadanie 2

Post by magdov on Fri Oct 21, 2011 11:51 pm

Być może (a nawet prawie na pewno) jest to głupie pytanie, ale jak skompilować plik z kodem źródłowym c (przykładowym z moodle'a), aby nie rzucał się, że ma undefined reference to... ?

magdov

Liczba postów : 37
Join date : 2010-10-12
Age : 27

View user profile

Back to top Go down

Re: Zadanie 2

Post by jodelek on Sat Oct 22, 2011 11:57 am

Gricha wrote:runtime error. zabic program
"Cokolwiek" nie znaczy "runtime error, zabić program". Równie dobrze można wyświetlać karnego kutasa zrobionego z $. Wychodzenie z założenia, że użytkownik biblioteki myśli i nie zrobi czegoś niedozwolonego, jest ryzykowne. Niekoniecznie należy wtedy wywalać wszystko.
avatar
jodelek

Liczba postów : 68
Join date : 2010-10-27
Age : 26

View user profile

Back to top Go down

Re: Zadanie 2

Post by Heniek on Sat Oct 22, 2011 12:03 pm

Gricha wrote:runtime error. zabic program

A jak generalnie się to robi,

Heniek

Liczba postów : 329
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 2

Post by Gricha on Sat Oct 22, 2011 12:32 pm

My robimy tylko zwykle exit jesli tylko nie ma debugowania.

Być może nie trzeba tak, ale można i jest to najłatwiejsze w sumie
avatar
Gricha

Liczba postów : 425
Join date : 2010-10-12
Age : 26
Skąd : Myszków

View user profile

Back to top Go down

Re: Zadanie 2

Post by Marcin on Sat Oct 22, 2011 10:31 pm

Rozmawiałem o tym z Peczarskim. Można zrobić cokolwiek, bo takiego testu nie będzie (zakładamy, że przy debug_level=0 dane są całkowicie poprawne).

Pytanie ode mnie:
Jaki jest oczekiwany output dla przykładu c++ z treści zadania?
W sensie czy ma się dać wyjąć tą 7-kę czy nie, bo to jest w innym scope?

Żeby nie szukać:

#include "cfifo.h"
#include iostream

class Foo {
public:
Foo() {
cfifo_put(0, 7);
}
};

static Foo foo;

int main() {
using ::std::cout;
cout << cfifo_get(0) << '\n';
return 0;
}

Marcin

Liczba postów : 10
Join date : 2011-06-07

View user profile

Back to top Go down

Re: Zadanie 2

Post by gromo on Sun Oct 23, 2011 12:57 pm

Wg mnie sie da

gromo

Liczba postów : 73
Join date : 2010-10-22

View user profile

Back to top Go down

Re: Zadanie 2

Post by jodelek on Sun Oct 23, 2011 2:11 pm

Heniek wrote:Mam pytanie odnośnie metody tworzącej kolejki:
Wykonujemy ciąg instrukcji:
tworzymy kolejkę -> zostaje jej przydzielony numer 1
tworzymy kolejkę -> zostaje jej przydzielony numer 2
usuwamy kolejkę (1)
tworzymy kolejkę -> jaki numer jej przydzielic ??
numer 1 czy numer 3
tworzymy kolejkę -> zostaje jej przydzielony dowolny wolny ID, np. 69
tworzymy kolejkę -> zostaje jej przydzielony dowolny wolny ID, np. 123456
usuwamy kolejkę (69)
tworzymy kolejkę -> jaki numer jej przydzielic ?? - dowolny wolny ID

Równie dobrze może być test, gdy będą tworzone i usuwane kolejki, aż licznik przekręci się na zero i będziesz chciał znów dodać kolejkę "0" - wywalisz błąd, mimo, że jest OK. Test może wydawać się złośliwy, ale może za jakiś 1000 lat na jakdojade.pl też przekręci się licznik ;D
avatar
jodelek

Liczba postów : 68
Join date : 2010-10-27
Age : 26

View user profile

Back to top Go down

Re: Zadanie 2

Post by jasaczek on Tue Oct 25, 2011 10:01 pm

zobacz jakiego typu mamy id... i teraz wyobraz sobie nawet petle ktora to robi, ile by to jej zajelo Razz

jasaczek

Liczba postów : 70
Join date : 2010-12-08
Age : 26
Skąd : Trollownia

View user profile

Back to top Go down

Re: Zadanie 2

Post by jodelek on Tue Oct 25, 2011 10:03 pm

wiem Very Happy ale prowadzący po obejrzeniu testów powiedział, że mamy sparwdzać counter overflow ^^
avatar
jodelek

Liczba postów : 68
Join date : 2010-10-27
Age : 26

View user profile

Back to top Go down

Re: Zadanie 2

Post by jasaczek on Tue Oct 25, 2011 10:08 pm

lul

jasaczek

Liczba postów : 70
Join date : 2010-12-08
Age : 26
Skąd : Trollownia

View user profile

Back to top Go down

Re: Zadanie 2

Post by magdov on Tue Oct 25, 2011 10:34 pm

A nam prowadzący powiedział, że nie trzeba się przejmować przekroczeniem licznika Wink Ale pewnie na testy nie spojrzał...

magdov

Liczba postów : 37
Join date : 2010-10-12
Age : 27

View user profile

Back to top Go down

Re: Zadanie 2

Post by Heniek on Wed Oct 26, 2011 1:44 pm

Mi pan Peczarski, czy szef wszystkich szefów, powiedział, że na tych kompach unsigned long to 2^64, wiec w żadnym rozsądnym czasie nie da się tego sprawdzić.

Heniek

Liczba postów : 329
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 2

Post by Gricha on Wed Oct 26, 2011 4:14 pm

moze dla zartu odpali na 20letnim wraku
avatar
Gricha

Liczba postów : 425
Join date : 2010-10-12
Age : 26
Skąd : Myszków

View user profile

Back to top Go down

Re: Zadanie 2

Post by Sponsored content


Sponsored content


Back to top Go down

Back to top


 
Permissions in this forum:
You cannot reply to topics in this forum