Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
4171
Cevap
168325
Tıklama
3
Öne Çıkarma
Cevap: C/C++/C# Sorularınız Buraya. . .(GÜNCEL) (207. sayfa)
B
9 yıl
Çavuş

Merhaba ; c#'ta sayının sadece kesirli kısmını döndüren bir program yazdırmak istiyorum. Örneğin; 20,45 ise 0,45'i döndürmesi gibi. Yardımcı olursanız sevinirim.


Bu mesaja 2 cevap geldi.
C
9 yıl
Çavuş

Sayıyı aşağı yuvarlayıp(floor) orijinal değerden çıkararak kesirli kısmı elde edebilirsiniz.





< Bu mesaj bu kişi tarafından değiştirildi counters -- 7 Ocak 2017; 2:38:19 >


Bu mesajda bahsedilenler: @Barcow
D
8 yıl
Er

Visual 2013 C++ win form açtığımda kod yazdıktan veya derletikten sonra design form ,formu görmek için tıkladığımda çok bekletiyor normal mi ? Win10 64bit işletim , 16gb ram sistemim iyi.
Beklettikten sonra sorun olmuyor sonra buttonu tıkladım kod yazdım forma geri bakmak için döneyim gine bekletiyor ? Veya derledim programı denedim sonra tekrar forma Myform.h(design) tıkladım mı gine bekletiyor ...



M
8 yıl
Çavuş

Öncelikle ne yapmak istediğimden bahsedeyim, bir dizi oluşturup bunun içine klavyeden 0 sayısı girilene kadar sayılar girip ondan sonra bubble sort algoritması ile bunları sıralamak istiyorum.

Kodlar:
#include <iostream> 
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

using namespace std;


int main()
{
setlocale(LC_ALL, "Turkish");
int boyut=1; //Boyutu burada 1 yapıyorum. Açıkçası burada ne yapmam gerek emin değilim tahminen yanlış yapıyorum. Bunu yaparken düşündüğüm şey 1 elemanlı yani indis elemanı tek elemanı olan bir dizi oluşturmak ve sonradan bunu değiştirmek. Eğer 2 yapıyor olsaydım bu sefer dizide girilmemiş eleman yaratıyor olurum diye düşündüm. 0 da 1 de 2 de yaptım, hata veriyor ve istediğim sonucu alamıyorum.

int enk = 0;
int sayi[boyut]; //Burada diziyi oluşturuyorum ve dizinin boyutunun, boyut adlı değişkene eşitliyorum. Şimdilik 1 yani.
int dng=0;
int gir;

int k = 0;
cout << "Dizi elemanlari: ";
while(true){ // Yanlış yaptığım alan bu döngü içerisinde olabilir. Sonsuz döngüyü oluşturdum.


cin >> gir; //İlk çalıştırmada sayıyı girdik.

if(gir==0){ //Eğer sıfırsa döngüden çıkması için bir komut oluşturduk.
break;
}


sayi[k] = gir; //sayının k'ıncı elemanını, girilen değere yani gir'e eşitledik. İlk girişte sıfırıncı eleman oluyor.

k++; // burada kaçıncı eleman oldugunu belirtmek için kullandıgım değişkeni bir sonraki elemanı değiştirmek için arttırmayı hedefliyorum.
boyut++; // 1 olan boyutu 2 yaptık. Devamında ise dizinin k'ıncı yani 1. elemanını gir e eşitliyor, boyut artıyor. fakat burada düşündüğüm hata ise örneğin bir sayı girdikten sonra boyut artıyor fakat bir sonraki gir değeri sıfıra eşit olunca artan boyut ve girilmeyen değer yüzünden boşa artmış oluyor.
}


cout << endl;

for(int i = 0; i<boyut;i++){
for(int j=i+1;j<=boyut;j++){
if(sayi[i]>sayi[j]){
enk = sayi[i];
sayi[i] = sayi[j];
sayi[j] = enk;
}
}
}
cout << "Dizi elemanlarinin kucukten buyuge siralanmis hali:
";

for (int i=0; i<=boyut;i++){
cout << sayi[i] << endl;
}

}


Bazen düzgün çalışıyor ve girdiğim her elemanı almıyor, emin değilim ama girdiğim son eleman olan sıfırı dahil ediyor olabilir veya bunu default olarak gösteriyor olabilir. Bazen ise program çalışmayı durduruyor.



V
8 yıl
Binbaşı

mod 1 almak en kolayi
Console.WriteLine(20.45 % 1);




Bu mesajda bahsedilenler: @Barcow
V
8 yıl
Binbaşı

atiyorum 2.7 yi "iki tam onda yedi"ye mi donusturmek istiyorsunuz?
eger oyleyse su an uydurdugum cozumu yazayim en iyi cozum mudur bilemem:

nokta oncesi ve sonrasini ayir.
oncesinin kac basamak oldugunu bul, basamaklari kendi icinde ayir ve kacinci sirada olduguna ve rakamin kac olduguna gore "doksan" gibi stringlere ata.
yani mesela:
91 sayisi icin 9 ve 1 diye ayir,
sagdan sola indexleri 0 ve 1 oldugu icin indexi 0 olan birler basamagi, 1 olan onlar basamagi, 2 olan yuzler vs diye gider.
burada 9 icin "doksan" 1 icin de "bir" stringlerini atarsin ve bunlari birlestirirsin. bu ondaligin sol kismi.
+ " tam " sabit stringi
sag kisim icin de yine kac basamak olduguna gore yuzde mi onda mi bulursun. ona gore "onda" seklinde string eklersin.
diger sayi da yine ilk bastaki yontem gibi sayiyi okutacak yontem.

simdi bir fonksiyon tanimla int deger alip string donduren. yani 92 sayisini alip "doksaniki" dondurecek.
yapacagi islemler:
bos bir sonuc stringi olustur
sayiyi diziye donustur: [9, 2]
diziyi ters cevir: [2, 9]
dizinin her elemani icin:
{
// birler, onlar dediklerim rakamin karsiligi olan stringleri tutan koleksiyon.
indexi kac? 0 ise birler
1 ise onlar
2 ise yuzler
3 ise binler
4 ise onbinler
5 ise yuzbinler ...
//ne kadar gidecegin sana bagli
koleksiyonundan sayinin degerinin karsiligini bul ve sonuc stringine bastan ekle. (stringin su anki hali "iki" ise yeni hali "doksaniki" olacak, yani basina eklemen gerek)
}
sonuc stringini dondur.

bu yukarda bahsettigim koleksiyonlar su sekilde:
onlar=
{ [0, ""], [1, "on"], [2, "yirmi"], ......, [9, "doksan"] }
bu sekilde birler, yuzler vs de olacak.

bu fonksiyonu sayi okutmada kullanacaksin. diger kisim kolay zaten
"tam" stringi sabit, "onda" veya "yuzde" stringini de noktanin sagindaki sayinin basamak sayisi belirleyecek ki o da basit bir islem string.length ile alirsin.

umarim anlatabilmisimdir gece gece. anlamadigin yer olursa sor cevaplarim. biraz uykuluyum umarim sacmalamamisimdir




Bu mesajda bahsedilenler: @Raiverd
A
8 yıl
Teğmen

G
8 yıl
Teğmen

C# ta Ben bir makro yaptım notepadde gayet güzel ve hızlı fakat oyunda açtığımda çok yavaş normal bir harfe basıyomuşsun gibi bunu nasıl oyun için uyarlayabilirim ??





< Bu mesaj bu kişi tarafından değiştirildi Guest-F531A68DD -- 14 Ocak 2017; 13:57:55 >

K
8 yıl
Yüzbaşı

 
#include <cstdio>
#include <iostream>
using namespace std;
int main(){
double a = 14049.30493
cout << a << endl; //Sonuçta sadece virgülden sonra 3ü veriyor.
printf("%lf",a); //Virgülden sonra 5 basamağı veriyor ama sonuna 0 ekliyor.

Sonuçta ikisi de istediğim sonucu vermiyor.Nasıl çözebilirim bu sorunu ?



İ
8 yıl
Teğmen

Merhaba Arkadaşlar. Algoritma örnekleri yapıyordum fakat bir algoritmada takıldım kaldım.
5 basamaklı tüm Palindromik (tersten aynı okunan örn:43534) sayıların toplamını bulan bir algoritma yaptım kodunu yazdım fakat yanlış sonuç veriyor bir türlü bulamadım hatayı. C ile yazdım kodlar aşağıda şimdiden teşekkürler...


#include <stdio.h>
int main()
{
int sayi, ters = 0, top = 0, gecici;
for (sayi = 11111; sayi <= 99999; sayi++)
{
gecici = sayi;
while(gecici > 0){
ters *= 10;
ters += gecici%10;
gecici = gecici / 10;
}
if (sayi==ters)
{
top += sayi;
}
}
printf("Toplam %d
", top);
return 0;
}





< Bu mesaj bu kişi tarafından değiştirildi iris07 -- 21 Ocak 2017; 19:20:19 >
Bu mesaja 1 cevap geldi.
K
8 yıl
Çavuş

ters değişkenini döngünün her adımında sıfırlamalısın.


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @iris07
İ
8 yıl
Teğmen

Çok teşekkür ederim. Nasıl unuttum onu ya




Bu mesajda bahsedilenler: @Keremqw
I
8 yıl
Yüzbaşı

#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;
int main() {
int randomSayi,tahmin,yanit;
srand(time(0));
randomSayi = rand() % 8999+1000;
do
{
cout << "Tahmininizi giriniz: ";
cin >> tahmin;
if (tahmin==randomSayi) {
cout << "Tebrikler! Random sayiyi bildiniz. \n";
cout << "Random Sayi= " << randomSayi << "\n";
return 0; }
else {
cout << "Maalesef! Random sayiyi bilemediniz. \n";
if (tahmin>randomSayi)
cout << "Tahmininizi azaltmalisiniz. \n";
else cout << "Tahmininizi arttirmalisiniz. \n"; }
}
while (tahmin!=randomSayi);
{
cin.ignore();
cin.get();
return 0;
cout << "Devam etmek icin 1 - Programi kapatmak icin 0 giriniz: ";
cin >> yanit;
if (yanit==1) cout << "RandomSayi = " << randomSayi
<< "\n";
if (yanit==0) cout << "Program kapaniyor... \n";




}
}

Bu kod çalışıyor ama devam etmek için 1 gelmiyor yarcımcı olabilirmisiniz



A
8 yıl
Yüzbaşı

Sıfırdan facebook tarzı siteler yaratabilmek için hangi dilleri, programları bilmek gerekir ?



S
8 yıl
Er

öncelikle iyi akşamlar ben bi ödevimde yarıya kadargeldim fakat programlama bilmediğim için fazla ilerleyemedim


#include <stdio.h>
int main ()
{
int Sayi, i, i2, M;
printf (" Bir sayi giriniz : ");
scanf ("%d",&Sayi);
for(i=2;i<=Sayi;i++){
M=1;
for(i2=2;i2<i;i2++){
if(i%i2==0) {
M=0;
break;
}}
if(M==1) printf("%d\n",i);
}
}


hocamın benden istediği girdiğimiz bir sayıyı 3 tane asal sayı toplamı şeklinde yazdıracak ben girdiğim sayıya kadar asal sayıları buldurdum fakat devamını getremedim teşekkür ederim şimdiden



S
8 yıl
Er

< Resime gitmek için tıklayın >

< Resime gitmek için tıklayın >





Ben bunların devamını getiremedim berde yanlış yapıyorum hoca girdiğim sayıyı 3 asal sayı toplamı şeklinde yazın dedi for içinde for mu olacak



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
D
8 yıl
Yüzbaşı

#include <stdio.h>
int checkPrime(int n);
int main()
{
int n, i, flag = 0;

printf("Enter a positive integer: ");
scanf("%d", &n);

for(i = 2; i< = n/2; ++i)
{
// condition for i to be a prime number
if (checkPrime(i) == 1)
{
// condition for n-i to be a prime number
if (checkPrime(n-i) == 1)
{
// n = primeNumber1 + primeNumber2
printf("%d = %d + %d\n", n, i, n - i);
flag = 1;
}

}
}

if (flag == 0)
printf("%d cannot be expressed as the sum of two prime numbers.", n);

return 0;
}

// Function to check prime number
int checkPrime(int n)
{
int i, isPrime = 1;

for(i = 2; i <= n/2; ++i)
{
if(n % i == 0)
{
isPrime = 0;
break;
}
}

return isPrime;
}




Bu ikili sayılar için.3 lü nasıl olur bilmiyorum.Asal sayıları arrayde yazıp random sayı atılmalı number 1 için.Sonra toplamdan bu number1 çıkarılmalı.Kalan sayılar için yukarıdaki codela sağlamalı başka yol gelmedi aklıma.GoldBach sanısı diye geçer bu.




Bu mesajda bahsedilenler: @student1515
C
8 yıl
Onbaşı

void veriler() 
{
con.Open();
da = new OleDbDataAdapter("select tb1.id,p_sicil_no,adi,soyadi,anne_adi,baba_adi,giris_tarihi,adresi from tb1 left outer join tb2 on tb1.id = tb2.id left outer join tb3 on tb2.id = tb3.id left outer join tb4 on tb3.id = tb4.id", con);
cb = new OleDbCommandBuilder(da);
da.Fill(dt); /* herşey doğru sıkıntı yok ama select cümlesinde hata veriyor*/
bs.DataSource = dt;
dataGridView1.DataSource = bs;
textBox1.DataBindings.Add("text", bs, "p_sicil_no");
textBox2.DataBindings.Add("text", bs, "adi");
textBox3.DataBindings.Add("text", bs, "soyadi");
textBox4.DataBindings.Add("text", bs, "anne_adi");
textBox5.DataBindings.Add("text", bs, "baba_adi");
dateTimePicker1.DataBindings.Add("text", bs, "giris_tarihi");
textBox6.DataBindings.Add("text", bs, "adresi");
con.Close();
}

< Resime gitmek için tıklayın >

Aldığım hata bu bir türlü çözümü bulamıyorum select cümlesindeki tb3 ve tb4 ü kaldırdığımda tb1 ve tb2 tablolarındaki veriler hatasız bi şekilde görüntüleniyor.

< Resime gitmek için tıklayın >

Veritabanıda bu şekilde, yardımcı olursanız çok sevinirim. Bu arada aynı select cümlesini sql serverda aynı tabloları oluşturup denedim gayet sorunsuz verileri görüntüleyebildim.



K
8 yıl
Er

Arkadaşlar merhaba,

Veri Yapıları pointer ödevim var.(C++)

Resimde 1. metotta pointerlar ile yeni bir nesne oluşturup güzelce diziyi yazdırıyorum.

Resimde 2.metotta yapmak istediğim 1. metotta yazdırdığım dizideki adresleri alıp indislerini değiştirip ekrana basmak. Ancak t2 pointerını 2. metotta kullanamıyorum.2.MEtotta swap işlemi yapacağımı biliyorum ama nasıl yapılacağını bilmiyorum< Resime gitmek için tıklayın >

İsteyen arkadaşlara ödevi tam anlamıyla anlamaları için ödev dosyasını atabilirim.



A
8 yıl
Binbaşı

Merhaba arkadaşlar bir sorum f=500x1+300x2, 45x1+30x2 <=420 ve x1+x2 <= 35, bu koşulları sağlayan max f değerini bulan bir program yazmam lazım nasıl yapabiliriz yardımcı olabilirseniz sevinirim