birden çok rasgele sayı üretmen
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
birden çok rasgele sayı üretmen
slmlar.ufak bir programla uğraşıyorum.delphi5 kullanıyorum.şöyle bir sorum olacak
var
Form1: TForm1;
a,b:integer;
c:string;
d:string;
implementation
{$R *.DFM}
procedure TForm1.toplam (x,y:integer;z,t:string);
var
a:integer;
b:integer;
c:string;
begin
a:=Random(10)+20;
b:=Random(10)+20;
c:='+_________';
memo1.Lines.Add(FloatToStr(a));
memo1.Lines.Add(FloatToStr(b));
memo1.Lines.Add(c);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
toplam(a,b,c,d);
end;
end.
şeklinde rasgele bir toplama işemi hazırlayacak bir kod yazdım bunu bir sayafaya farklı değerlerle çağırmak istiyorum.örneğin ödev kağıdan 15 tane farklı rakalmlarla işlem yazacak yardımcı olursanız sevinirim.acemiliğimizin kusuruna bakmayın.slmlar.
var
Form1: TForm1;
a,b:integer;
c:string;
d:string;
implementation
{$R *.DFM}
procedure TForm1.toplam (x,y:integer;z,t:string);
var
a:integer;
b:integer;
c:string;
begin
a:=Random(10)+20;
b:=Random(10)+20;
c:='+_________';
memo1.Lines.Add(FloatToStr(a));
memo1.Lines.Add(FloatToStr(b));
memo1.Lines.Add(c);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
toplam(a,b,c,d);
end;
end.
şeklinde rasgele bir toplama işemi hazırlayacak bir kod yazdım bunu bir sayafaya farklı değerlerle çağırmak istiyorum.örneğin ödev kağıdan 15 tane farklı rakalmlarla işlem yazacak yardımcı olursanız sevinirim.acemiliğimizin kusuruna bakmayın.slmlar.
Re: birden çok rasgele sayı üretmen
random komutundan önce randomize fonksiyonunu çağırısanız her seferinde farklı sayılar türetilir.
Re: birden çok rasgele sayı üretmen
birisi lütgen yardın etsin yoksa bu aleti KIRACAM.
arkadaşın verdiği randomize komutunu bir kez yazdım doğru olarak çalıştı(for t:=1 to 5 do toplam(a,b,c,d) dediğimde 5 tane farklı toplama işlemi vermişti) fakat aynı kodlarla yeniden yazıyorum bu kez aynı sayılarla yapıyor.slmlar
arkadaşın verdiği randomize komutunu bir kez yazdım doğru olarak çalıştı(for t:=1 to 5 do toplam(a,b,c,d) dediğimde 5 tane farklı toplama işlemi vermişti) fakat aynı kodlarla yeniden yazıyorum bu kez aynı sayılarla yapıyor.slmlar
Re: birden çok rasgele sayı üretmen
merhaba
randomize kullandıysanız bi sorun olmaması gerek.
"toplam" prosedürüne gönderdiğiniz 4 parametre var bunların neden kullandınız çözemedim, burda gönderdiğiniz a,b,c,d değişkenlerini prosedür içerisinde tekrar tanımlamışsınız. Aşağıdaki gibi örneğinizi düzenledim.
İyi çalışamalar.
randomize kullandıysanız bi sorun olmaması gerek.
Kod: Tümünü seç
for t:=1 to 5 do toplam(a,b,c,d)
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
procedure ToplaYaz;
var
sayi1, sayi2 : Integer;
begin
Randomize;
sayi1:=Random(10)+20;
sayi2:=Random(10)+20;
memo1.Lines.Add(FloatToStr(sayi1));
memo1.Lines.Add(FloatToStr(sayi2));
memo1.Lines.Add('+_________');
memo1.Lines.Add(IntToStr(sayi1+sayi2));
memo1.Lines.Add('');
end;
var
i : byte;
begin
for i:=0 to 5 do ToplaYaz;
end;
Re: birden çok rasgele sayı üretmen
proglama konusunda bilgi sahibi değilim ama kopyal ypıştırdada sorun yaşadığımı görünce artık kendimden umudu kestim.
Yukarıdaki kodu çalıştırdığımda sonuç fartklı değil aynı çıkıyo aşağıda çalışan programın sonuçları :
Memo1
22
21
+_________
43
22
21
+_________
43
22
21
+_________
43
22
21
+_________
43
22
21
+_________
43
22
21
+_________
43
biris lütfen yardımm etsin
Yukarıdaki kodu çalıştırdığımda sonuç fartklı değil aynı çıkıyo aşağıda çalışan programın sonuçları :
Memo1
22
21
+_________
43
22
21
+_________
43
22
21
+_________
43
22
21
+_________
43
22
21
+_________
43
22
21
+_________
43
biris lütfen yardımm etsin
Re: birden çok rasgele sayı üretmen
secginin kodunda aralık az belki ondan yapıyordur, çalışan kod
Kod: Tümünü seç
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
procedure ToplaYaz;
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ToplaYaz;
var
sayi1, sayi2 , toplam: Integer;
begin
Randomize;
sayi1 := Random(100);//0-100 arasındaki sayılardan seçer
sayi2 := Random(100);
memo1.Lines.Add(FloatToStr(sayi1));
memo1.Lines.Add(FloatToStr(sayi2));
memo1.Lines.Add('+_________');
toplam := sayi1+sayi2;
memo1.Lines.Add(Format('%d' , [toplam] ));
memo1.Lines.Add('');
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i : byte;
begin
for i:=0 to 5 do
begin
ToplaYaz;
end;
end;
end.
Re: birden çok rasgele sayı üretmen
evet orhancc nin dediği gibi sayı aralığı az aynı sayı üretme ihtimali yüksek fakat tazeusta nın son yazdığı mesajdaki gibi sayi1 ve sayi2 değerini sürekli aynı üretmemesi gerekli. Kodu test ederek göndermişdim.
Re: birden çok rasgele sayı üretmen
secgin kodda sorun yok ama tekrarlama olasılığı fazla sadece ben de de 3-4 kere geldi aynı değerler
Re: birden çok rasgele sayı üretmen
0 ile 10 arasında rast gele üretilen değer 20 eklenerek sayı üretiyor tazeusta nın son mesajındaki gibi sürekli aynı sayı üretmesi mantıksız kodda sorun var demedim sürekli aynı sayıları vermesinde sorun var, random da verilen aralığın 0 ile 10 olması istenmiş olabileceğinden ben düzeltme gereğinde bulunmadım.
Re: birden çok rasgele sayı üretmen
saygıdeğer bu işe emeklerini vermiş uzman kardeşlerim.bu işin başında olduğumu biliyorum ama çok sıktı sizi de sıktım.ama
son verilen kodda aynı sorun gözüküyor.bu seferde de 2. sayı hep aynı üstteki değişerek geliyor.çalıştığım bilgisayarla nete girdiğim farklı olduğu için şimdi ekreandaki sonucu ekleyemiyorum ama program çalışınca 1.sayı değişiyor 2.sayı hep aynı üretiliyor.yalnız bir nokta var bendeki program delphi5.yukarıda kodu paylaşan arkadaşım uses kısmında variants kullanmış.
program variants la çalışmıyor onu silince çalışıyor belki hata buradadır yardımlşarınız için teşekkürler.inşallah birgün bende birilerine yardımcı olabilirim.slmlar.
son verilen kodda aynı sorun gözüküyor.bu seferde de 2. sayı hep aynı üstteki değişerek geliyor.çalıştığım bilgisayarla nete girdiğim farklı olduğu için şimdi ekreandaki sonucu ekleyemiyorum ama program çalışınca 1.sayı değişiyor 2.sayı hep aynı üretiliyor.yalnız bir nokta var bendeki program delphi5.yukarıda kodu paylaşan arkadaşım uses kısmında variants kullanmış.
program variants la çalışmıyor onu silince çalışıyor belki hata buradadır yardımlşarınız için teşekkürler.inşallah birgün bende birilerine yardımcı olabilirim.slmlar.
Re: birden çok rasgele sayı üretmen
delphi 5 hiç kullanmadım delphi 7 kullanıyorum verdiğim kod delphi 7 de çalışıyor delphi 5 için birşey söyleyemiyorum ama şunu deneyebilirsin ilk Random komutundan önce Randomize kulandık. 2. Randomdan öncede Randomize yazarak deneyebilirmisiniz sonuç ne olacak.