LabVIEW – Liga Zadaniowa TYDZIEŃ 3
Transkrypt
LabVIEW – Liga Zadaniowa TYDZIEŃ 3
© 2013 LVFG – kopiowanie, rozpowszechnianie i wykorzystywanie wyłącznie za zgodą autora LabVIEW – Liga Zadaniowa TYDZIEŃ 3 Zadanie 1. Epsilon maszynowy to taka definiowana dla liczb zmiennoprzecinkowych najmniejsza liczba , dla której (maszynowe dodawanie) . Wykonaj VI obliczający wartość epsilonu maszynowego w LabVIEW, dla typów danych SGL, DBL i EXT. Dla ułatwienia obliczeń, dany jest algorytm w języku C: #include <stdio.h> int main( int argc, char **argv ) { float machEps = 1.0f; printf( "current Epsilon, 1 + current Epsilon\n" ); do { printf( "%G\t%.20f\n", machEps, (1.0f + machEps) ); machEps /= 2.0f; // If next epsilon yields 1, then break, because current // epsilon is the machine epsilon. } while ((float)(1.0 + (machEps/2.0)) != 1.0); printf( "\nCalculated Machine epsilon: %G\n", machEps ); return 0; } IN - Liga Zadaniowa LVFG tydz. 3 OUT SGL eps_sgl DBL eps_dbl EXT eps_ext 1 © 2013 LVFG – kopiowanie, rozpowszechnianie i wykorzystywanie wyłącznie za zgodą autora Zadanie 2. Opracuj program, którego zadaniem jest przeprowadzenie testu zręcznościowego polegającego na „złapaniu” prostokątnego obiektu (przez kliknięcie na nim). Obiekt pojawia się w losowo wyznaczonym położeniu w obszarze oznaczonym szarym prostokątem. Po kliknięciu na obiekcie pojawia się on w innym położeniu i cykl sie powtarza. Test polega na „złapaniu 10 obiektów”. Po złapaniu 10 obiektów test jest zakończony a jego wynik (czas, który zajęło złapanie 10 obiektów) widoczny na wskaźniku „Test Result”. Wymagania: Wciśnięcie przycisku „Start” uruchamia test. Na czas trwania testu przycisk Start jest zablokowany. Po klinięciu na obiekt, zmienia on swoje położenie, a wskaźnik „Hits counter” jest inkrementowany. W trakcie trwania testu aktualizowany jest wskaźnik numeryczny trwania testu „Test Result” w milisekundach (częstotliwość aktualizacji minimum 50 razy na sekundę). Po upływie 15 sekund zakończenie testu następuje automatycznie. Przycisk „Stop” kończy działanie aplikacji w dowolnym momencie. Panel frontowy przykładowej aplikacji Catch Me: IN OUT Nie ma potrzeby tworzenia panelu połączeniowego Liga Zadaniowa LVFG tydz. 3 2 © 2013 LVFG – kopiowanie, rozpowszechnianie i wykorzystywanie wyłącznie za zgodą autora Zadanie 3. (zadanie zawiera pliki pomocnicze) Wykonaj notatnik, umożliwiający edycję, odczyt i zapis plików tekstowych, oddający jak najwierniej interfejs z dołączonego przykładu. Notatnik powinien mieć: Run-Time menu z opcjami: Nowy, Otwórz, Zapisz, Zapisz jako…, Zamknij w menu Plik. Pole edycji rozciągające się wraz ze zwiększaniem okna Notatnika IN OUT Nie ma potrzeby tworzenia panelu połączeniowego Zadanie 4. Oszacuj metodą Monte Carlo powierzchnię pomiędzy parabolą o równaniu równaniu . IN U32 Number of guesses Liga Zadaniowa LVFG tydz. 3 i prostą o OUT DBL Result 3 © 2013 LVFG – kopiowanie, rozpowszechnianie i wykorzystywanie wyłącznie za zgodą autora Zadanie 5. Zaprojektuj SubVI przekształcający typ ENUM na tablicę łańcuchów (String), odpowiadającą kolejnym etykietom w typie enumerowanym. Efektem działania takiego diagramu: Ma być: Ze względu na specyfikę zadania nr 5, NIE BĘDĄ AKCEPTOWANE ROZWIĄZANIA WBUDOWANE W LABVIEW, z zaszyfrowanymi diagramami. Decyzja ta jest ostateczna i nie ulega renegocjacji. IN OUT Enum* [ARR of STRING] Enum Strings * - wejście dowolnego typu, warunkiem jest by akceptowało każdy input typu enum Liga Zadaniowa LVFG tydz. 3 4