• 17-11-2008, 01:37:21
    #1
    yarınki sınavda çıkması muhtemel bir soru için sizlerden yardım bekliyorum. Yardımcı olursanız sevinirim.

    Soru şu : Girilen sayıyı basamak sayısı kadar ekrana yazdıran program. ( mesela 24 ü 2 kere, 543 ü üç kere )

    basit gibi görünen ama sabahtan beri uğraşıp yapamadığım bir soru. yardımcı olacaklara, olmak isteyenlere şimdiden teşekkürler.

    Bir de bu C de sayının tam kısmını alma diye bi olay var mı ? (2.5 i 2 alacak mesela )

    Yardımlarınızı bekliyorum
  • 17-11-2008, 01:47:04
    #2
    ufak bir değişikle rakamlarada uyarlayabilirsin cümle yazan yere rakam yaz çıktıya
    #include <stdio.h>
    int uzunlukBul(char *);
    int uzunlukBul(char *chPt){
      int i=0;
      while(chPt[i]!='\0'){ // NULL karaktere kadar bak:
        i++;
      }
      // uzunlugu dondur:
      return i;
    }
    int main(){
      char chPt[50];
      int uzunluk=0;
      puts("Bir cumle giriniz (max 50 karakter):");
      // cumleyi diziye yerlestir:
      gets(chPt);
      uzunluk=uzunlukBul(chPt);
      // uzunlugu ekrana yaz
      printf("girdiginiz cumlenin uzunlugu: %d", uzunluk);
    getch();
    }
    Bir de bu C de sayının tam kısmını alma diye bi olay var mı ? (2.5 i 2 alacak mesela ) bunun içinde sayıyı float olarak değilde int olarak tanımla olması lazım
  • 17-11-2008, 11:04:24
    #3
    Üyeliği durduruldu
    kursta yapmıstım bende buna dikkat et burada
    bitane ClassSamle9
    bide Form1.cs var(:

    Form1.cs içindeki kos;
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    
    namespace ClassSamle9
    {
        public partial class Form1 : Form
        {
            Chart _chart = new Chart();
            public Form1()
            {
                InitializeComponent();
            }
    
            private void label3_Click(object sender, EventArgs e)
            {
     
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
    
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                if (textBox1.Text == "")
                {
                    MessageBox.Show("Ürün Adı Boş Bırakılamaz!", "Eksik alan", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
    
                }
                if (textBox2.Text == "")
                {
                    MessageBox.Show("Ürün Fiyatı Boş Bırakılamaz", "Eksik Alan", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }
                if (textBox3.Text == "")
                {
                    MessageBox.Show("Ürün Miktarı Boş Bırakılamaz", "Eksik Alan", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }
                _chart.Add(textBox1.Text,int.Parse(textBox3.Text), decimal.Parse(textBox2.Text) );
    
                textBox4.Text = _chart.GrandTotal().ToString();
    
                listView1.Items.Clear();
                foreach (Product _p in _chart)
                {
                    ListViewItem _li = new ListViewItem(_p.Name);
                    _li.SubItems.Add(_p.Price.ToString());
                    _li.SubItems.Add(_p.Amount.ToString());
                    _li.SubItems.Add(_p.LineTotal().ToString());
                    listView1.Items.Add(_li);
                }
                        
    
           }
    
            private void button2_Click(object sender, EventArgs e)
            {
                textBox1.Text = null;
                textBox2.Text = null;
    
                
            }
          
            private void button3_Click(object sender, EventArgs e)
            {
                Application.Exit();
            }
    
            private void listView1_SelectedIndexChanged(object sender, EventArgs e)
            {
    
            }
    
            private void textBox2_TextChanged(object sender, EventArgs e)
            {
    
            }
            
        }
    }

    ClassSample9 içindeki kodlar bunlar işine yarayacagına eminim.

    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Collections;
    
    namespace ClassSamle9
    
     
       {    
        class Product
            
        {
            
            private string _name;
    
            public string Name
            {
                get { return _name; }
                set { _name = value; }
            }
    
            private decimal _price;
    
            public decimal Price
            {
                get { return _price; }
                set { _price = value; }
            }
            private int _amount;
    
            public int Amount
            {
                get { return _amount; }
                set { _amount = value; }
            }
    
            public decimal LineTotal()
            {
                return _price * _amount;
            }
            public Product(string Name)
            {
                _name = Name;
            }
            public Product (string Name,int Amount,decimal Price)
            {
                _name=Name;
                _price=Price;
                _amount=Amount;
            }
        }
    
        class Chart :CollectionBase
        {
         public void Add (Product ProductIstance)
         {
         this.List.Add(ProductIstance);
         }
    
            public Product Add(string Name,int Amount,decimal Price)
            {
              Product _temp = new Product( Name,Amount,Price);
            this.List.Add(_temp);
            return _temp;
            }
            public decimal GrandTotal()
            {
            
            decimal _total = 0;
                foreach(Product _p in this.List)
                    _total+=_p.LineTotal();
                return _total;
            }
    
        }
        
        }
  • 19-11-2008, 04:42:07
    #4
    Merhaba arkadaşım, mesajı yeni gördüm. Hemen yazdım. Mantıksal olarak aşırılı yüklemeli bir program. Ama buyur hallettim.

    /*
    Programın Amacı : Girilen rakamı, basamağı kadar yazdırır.
    Yazan : Mustafa SENGUL ****.a siccil
    Copyleft
    */
    #include <stdio.h>
    int main() {

    int a,b;
    printf("Sayıyı Giriniz :");
    scanf("%d",&a);
    b = 1;
    for (a;a > b; b = b*10)
    {
    printf("%d\n",a);
    }
    return 0;

    }

    test edildi çalışıyor. kolay gele
  • 19-11-2008, 21:41:25
    #5
    arkadaşlar yardımlarınız için hepinize teşekkür ediyorum. sınavdan 100 bekliyorum
  • 20-11-2008, 13:59:56
    #6
    Her sınavda R10'a gelinmez ama
  • 21-11-2008, 16:46:13
    #7
    tam kısmını almak çok kolay c öğrenmeye ben de yeni başladım gayet zevkli bişeye benziyor.

    #include <stdio.h>
    int main()
    {
    int a;
    double b;
    scanf("%lf",&b);
    a=b;
    printf("%d",a);
    return 0;
    }