Příklaf – Visual Basic – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Příklaf – Visual Basic – Fórum – Programujte.comPříklaf – Visual Basic – Fórum – Programujte.com

 

jojo
~ Anonymní uživatel
16 příspěvků
21. 11. 2018   #1
-
0
-

Dobrý večer, potřebovala bych poradit, jak tento úkol mám naprogramovat. Dík

Vygeneruj a vypište 10 nahodných čísel od -30 do 70 a zjistěte  průměr jen kladných čísel. 

Nahlásit jako SPAM
IP: 90.177.204.–
22. 11. 2018   #2
-
+1
-
Zajímavé
Kit +

Připravím si dvě proměnné např soucet a pocet a obě vynuluji

V těle cyklu for (proběhne 10x):
- vygeneruji náhodné číslo v rozsahu -30 až 70
- číslo vypíšu na monitor
- porovnám, jestli je kladné, pokud ano:
   - součet zvýším o vygenerované číslo
   - pocet zvýším o 1

Po skončení cyklu vypíšu počet kladných čísel a průměr - ten stanovím jako soucet / pocet,

hu

Nahlásit jako SPAM
IP: 195.178.67.–
uzi
~ Anonymní uživatel
6 příspěvků
22. 11. 2018   #3
-
0
-

#2 hlucheucho
myslíš takhle.

Dim nah As Single
Dim soucet As Integer
Dim prumer As Single
Dim i As Single
Dim pocet As Integer
rozsah = 70 - (-30) + 1

For i = 1 To 10
nah = Int(Rnd() * rozsah) - 30

   Next i
If (nah > 0) And (nah > 30) Then
pocet = pocet + Str(nah) + ","
soucet = soucet + 1
prumer = prumer + Str(soucet / pocet)

End Sub

Nahlásit jako SPAM
IP: 90.177.204.–
uzi
~ Anonymní uživatel
6 příspěvků
22. 11. 2018   #4
-
0
-

Ještě jsem to napsal takhle. Může mi někdo poradit, kde mám chybu. Díky za radu.
Sub main()

  Dim i As Byte, pocetVIntervalu As Byte, rozsah As Byte
  Dim nah As Single
  Dim s As String
  Dim vIntervalu As String
  Dim prum As Single
  
  pocetVIntervalu = 0
 
  s = "Padla tato náhodná čísla: "
  rozsah = 70 - (-30) + 1
  vIntervalu = "V intervalu od 0 do 70 byla tato čísla: "
  For i = 1 To 10
    nah = Int(Rnd() * rozsah) - 30
    If (nah >= 0) And (nah <= 70) Then
      vIntervalu = vIntervalu + Str(nah) + ", "
      pocetVIntervalu = pocetVIntervalu + 1
    End If
    s = s + Str(nah) + ", "
Next
prum = prum + Str(vIntervalu / pocetVIntervalu)
  
  MsgBox s + Chr(10) + vIntervalu + Chr(10) + "Tedy v intervalu 0..70 bylo celkem " + Str(pocetVIntervalu) + " čísel"
  MsgBox "prumer je" + Str(prum)
End Sub

Nahlásit jako SPAM
IP: 90.177.204.–
MilanL+1
Expert
24. 11. 2018   #5
-
0
-

#4 uzi

tohle nemůže fungovat
      vIntervalu = vIntervalu + Str(nah) + ", "
prum = prum + Str(vIntervalu / pocetVIntervalu)

proměná "vintervalu" je řetězec to nemůžeš použít ve výpočtu, měl by sis udělat proměnou single pro sumu a v podmínce do ní přičítat tu novou hodnotu.

otázkou je z jaké lekce je ten úkol, zda se nemělo použít pole.

Nahlásit jako SPAM
IP: 185.112.167.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 3 hosté

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý