Otázka:
Jak rozdělím číslo na jednotlivé číslice?
Austinthemighty
2016-08-06 11:02:00 UTC
view on stackexchange narkive permalink

Jak bych rozdělil část1 na 2-3 číslice a vložil je do num1 , num2 a num3 ?

  int FMSTATION = 10250; int update_display () {int fm_station = FMSTATION; int část1; int part2; část1 = (FMSTATION / 100); část2 = (FMSTATION% 100); část2 = (část2 / 10); int num1 =; int num2 =; int num3 =; int num4 = část2; matrix.writeDigitNum (0, num1, false); // 1. číslo na lcd matrix.writeDigitNum (1, num2, false); // 2. číslo na lcd matrix.writeDigitNum (3, num3, true); // 3. číslo na LCD a přidá „.“ matrix.writeDigitNum (4, num4, false); // 4. číslo na lcd matrix.writeDisplay ();}  

Prohledával jsem web shora dolů, ale nenašel jsem odpověď. Nakonec bych měl na displeji zobrazit 102,5 .

Dva odpovědi:
Majenko
2016-08-06 18:51:09 UTC
view on stackexchange narkive permalink

% 10 vrátí poslední číslici čísla. Vydělením 10 posune číslo o jednu číslici doprava.

Takže pokud máte číslo 10250 jako celé číslo, můžete se dostat ke každému číslu pomocí:

  10250% 10 = 0 (10250/10)% 10 = 5 (10250/100)% 10 = 2 (10250/1000)% 10 = 0 (10250/10 000)% 10 = 1  

Takže váš kód lze napsat jako:

  num4 = (fm_station / 10)% 10; num3 = (fm_station / 100)% 10; num2 = (fm_station / 1000)% 10; num1 = ( fm_station / 10 000)% 10;  

Není třeba se zabývat proměnnými „part“.

Vyzkouší to
Nithin Kurian
2016-08-06 11:37:14 UTC
view on stackexchange narkive permalink

Myslím, že vám to pomůže:

  int FMSTATION = 10250; int update_display () {int fm_station = FMSTATION; int část1; int part2; část1 = (FMSTATION / 100); // 102 part2 = (FMSTATION% 100); // 50 part2 = (part2 / 10); // 5 int num1 = part1 / 100; // 1 int num2 = (part1% 100) / 10; // 0 int num3 = part1% 10; // 2 int num4 = part2; // 5 matrix.writeDigitNum (0, num1, false); // 1. číslo na lcd matrix.writeDigitNum (1, num2, false); // 2. číslo na lcd matrix.writeDigitNum (3, num3, true); // 3. číslo na LCD a přidá „.“ matrix.writeDigitNum (4, num4, false); // 4. číslo na lcd matrix.writeDisplay ();}  
Pro zobrazení `num1` bych také zkontroloval, jestli to není` 0`, než to zobrazím, a vymazat číslici, pokud je, aby se `95.6` nezobrazilo jako` 095.6`.
Dobře, zkusím to
Díky tomu to fungovalo, také se pokusím implementovat číslici clear


Tyto otázky a odpovědi byly automaticky přeloženy z anglického jazyka.Původní obsah je k dispozici na webu stackexchange, za který děkujeme za licenci cc by-sa 3.0, pod kterou je distribuován.
Loading...