Bug ili...?

1

Bug ili...?

offline
  • Pridružio: 01 Apr 2005
  • Poruke: 797
  • Gde živiš: Niš

//Ovaj kod u C#-u:

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8.  
  9. namespace WindowsApplication5
  10. {
  11.     public partial class Form1 : Form
  12.     {
  13.         public Form1()
  14.         {
  15.             InitializeComponent();
  16.         }
  17.        
  18.         private void button1_Click(object sender, EventArgs e)
  19.         {
  20.             double br = 0;
  21.             for (int i = 0; i < 1000; i++)
  22.             {
  23.                 br = br + (double)0.1;
  24.                 rt1.AppendText(br.ToString()+"\n");
  25.             }
  26.         }
  27.     }
  28. }


//Pravi greshku vec kod iteracije gde je br=3, zashto? Isto se deshava i u Delphi-u...kako da se ovo izbegne?


snoop.edit: koristi code tag.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

Zanimljivo.
Probao sam ovaj code;

  1. double br = 0;
  2. for (int i = 0; i < 1000; i++)
  3. {
  4.    br = br + (double)0.1;
  5.    textBox1.Text += br.ToString()+"\n";
  6. }


I odradio je posao bez greske.

Koristio sam i StringBuilder, ali ni tu nije bilo greske.

Posto vidim da si ovo radio u VS.NET05, tu nisam probao, ali mislim da ne bi bilo nista razlicito.

Stavi umesto rt1.AppendText textBox1.Text pa vidi da li ce da radi tako.



offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24135
  • Gde živiš: Wien

Pricam napamet, posto ne mogu sada da isprobam, ali jesi li osigurao dovoljan broj linija u komponenti u koju unosis text?

offline
  • Pridružio: 01 Apr 2005
  • Poruke: 797
  • Gde živiš: Niš

Nemoguce, na tri racunara nece ni sa konverzijom double da radi tacno, Snoop!!!
Problem je u predstavljanju brojeva u binarnom brojnom sistemu. Sa 0.2 ili 0.5 je O.K.
Nema veze sa brojem linija.
Shto je najchudnije prva greshka se pojavljuje kod 5, a u watch kod vrednosti 3!!!
Greshka je na 10-oj 11-oj decimali...

offline
  • Pridružio: 18 Apr 2003
  • Poruke: 5001
  • Gde živiš: Beograd

Jesi probao ovo sto ti je snoop rekao: "Stavi umesto rt1.AppendText -> textBox1.Text pa vidi da li ce da radi tako."?

offline
  • Pridružio: 01 Apr 2005
  • Poruke: 797
  • Gde živiš: Niš

Nema to veye, on u watch pokazuje grešku.Ovo štampanje je da ne bi debugirao.

offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

Ne razumem kako kod tebe ne radi, a kod mene radi.

Ajde uploaduj Solution da vidim.

offline
  • Pridružio: 25 Jul 2003
  • Poruke: 431
  • Gde živiš: Nis

Pratite vrednosti br-a i videcete gresku kad treba da predje sa 2.9 na 3 a pri stampanju greska se pojavljuje kad treba da predje sa 5.9 na 6. Sa 5.9 ne prelazi na 6 vec na 5.99999...Jeste li to primetili?

offline
  • Pridružio: 01 Apr 2005
  • Poruke: 797
  • Gde živiš: Niš

Bravo Janeze!
Nisam sam.

offline
  • Pridružio: 18 Apr 2003
  • Poruke: 5001
  • Gde živiš: Beograd

Hmm ti kad kazes gresku ti ustvari mislis na to sto je "janez" rekao?

Ko je trenutno na forumu
 

Ukupno su 1139 korisnika na forumu :: 26 registrovanih, 1 sakriven i 1112 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Asprilja, dane007, DJUNTA, draganl, DucicM, Dzuki, Egzekutor13, El-Komadante, goran.vvv, grunff2, Inner-Cell, Jaz, kendzo-andzo-boni-fju, koom0001, kybonacci, Mrav Obrad, nemkea71, not_sure, opt1, Poker, Profesor_018, royst33, sap, sekretar, Vladoj, wolf431