Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 29 mar 2024, o 09:03


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 2 ] 
Autor Wiadomość
PostNapisane: 7 sty 2019, o 14:12 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

Witam
Napisałem takiego potwora, zastanawiam się jak można to zrobić inaczej bardziej fachowo bo patrząc na taki „kod” mnie samego odrzuca i mam świadomość, że jest to mało eleganckie, tyle if-ów. Podkreślam, że mimo paskudnego wyglądu działa tak jak powinno.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Poniższa funkcja mam za zadanie przypisać wynikowi (zakresowi) z ADC konkretną liczbę. Na przykład wartość powyżej 995 powinna dawać wynik 0, wartość od 981 do 995 wskazuje na 10, od 958 do 981 to 11, od 938 do 958 to już 12 itd.
Nie mogłem tego zrobić stosując jakiś stały przelicznik, ponieważ wartości z ADC nie przyrastają liniowo.
Czy macie pomysł jak to napisać profesjonalnie?
Pytam z ciekawości bo jak napisałem powyżej, działa prawidłowo, tylko wygląda dziwnie a gdybym potrzebował poszerzyć zakres od 0 do 50 to już w ogóle będzie śmiesznie.
Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 sty 2019, o 16:31 
Offline
Użytkownik

Dołączył(a): 26 mar 2014
Posty: 34
Pomógł: 11

A jeżeli zależy Ci na pamięci możesz też zrobić tak:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 2 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 9 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO