Şartlı İfadeler (if-else if-else) - Robo90 Arduino Dersleri #12

Поделиться
HTML-код
  • Опубликовано: 30 сен 2024
  • "Eğer bu olursa bu olsun", "eğer şu değeri görürsen bunu yap" gibi temel komutları Arduino'ya vermek istediğinizde kullanmanız gereken yapılara şartlı ifadeler diyoruz. if, else if, else 3 lüsünden oluşan bu konuyu bu videoda inceliyoruz. İyi seyirler.
    🚀 Robo90 Arduino Setleri:
    👉Robo90 Arduino Uno İleri Başlangıç Seti: www.robo90.com...
    👉Robo90 Arduino Uno Başlangıç Seti: www.robo90.com...
    🔗 İnternet Mağazamız: www.robo90.com/
    🔗 Instagram: / robo90com
    🔗 Arduino Dersleri Oynatma Listesi (Playlist):
    • Neden Bu Arduino Kursu...
    👉Örnek soru:
    1'den, 100'e kadar bir değişkenin değerini birer birer arttıran bir kod yazınız. Bu değişkenin değeri artarken, her bir arttırmada değişkenin değerini ekrana yazdırın. 3'e tam bölünen sayılar denk geldiğinde sayının yanına *, 5'e tam bölünen sayılar denk geldiğinde # karakterlerini sayının yanına yazdırın. Hem 5'e, hem 3'e kalansız bölünen sayılar denk geliğinde BOOOM yazdırın. Örnek çıktıdan faydalanabilirsiniz.
    👉Örnek Ekran çıktısı:
    1
    2
    3*
    4
    5#
    .
    .
    .
    15 BOOOM
    .
    .
    .
    Tüm 3D yazıcı, filament ve yedek parça ihtiyaçlarınız için robo90.com'a göz atabilirsiniz.
    Bu içerikte Robo90 kendi sunduğu ürün ve hizmetlerin #reklam ve #tanıtım faaliyetlerini yapmaktadır.

Комментарии • 70

  • @alpertugrul2277
    @alpertugrul2277 Год назад +6

    int sure = 100; //isteğe bağlı yazma hızı
    int sayi = 0;
    void setup()
    {
    Serial.begin(9600);
    }
    void loop()
    {
    sayi = sayi + 1;

    if(sayi%15==0)
    {
    Serial.println("BOOM");
    }

    else if (sayi%5==0)
    {
    Serial.print(sayi); Serial.println("#");
    }
    else if (sayi%3==0)
    {
    Serial.print(sayi); Serial.println("*");
    }
    else
    {
    Serial.println(sayi);
    }

    delay(sure);
    }

    • @zeynalovomar
      @zeynalovomar 9 месяцев назад

      Bu sonsuza kadar gidiyor. 1-100 arası olması lazım.

    • @alpertugrul2277
      @alpertugrul2277 9 месяцев назад +1

      @@zeynalovomar void loop() kısmının içinin tamamını
      if(sayi

  • @aykutdr3861
    @aykutdr3861 2 года назад +6

    Şartlı ifadeleri bu kadar basit ve güzel anlatan bir video serisi izlemedim ellerine sağlık abi…

  • @gerceginpesinde365-6
    @gerceginpesinde365-6 3 месяца назад +1

    ELSE IF ve ELSE arasındaki temel fark şöyledir anladığım kadarıyla :ELSE IF bir koşula sahiptir ve IF yanlış olduğunda ELSE IF'e ,ELSE IF de yanlışsa sonraki ELSE IF'e, o da yanlışsa diğer ELSE IF'e geçecek şekilde ilerler ve tüm ELSE IF ler de yanlışsa ELSE'i işleme koyar yani ELSE koşul barındırmayan son çare olarak bir seçenektir.

  • @beyaz58
    @beyaz58 2 года назад +3

    biran korktum bıraktın diye paylaşımı izleyelim bakalim şimdiden ağzına saglik dostum

  •  Год назад +2

    int a = 0;
    void setup() {
    Serial.begin(9600);
    }
    void loop() {
    if (a >= 0 && a

  • @ramazandegirmenci127
    @ramazandegirmenci127 5 месяцев назад +1

    Zaten sınavdan geçmek için bu videoyu izliyorum kalma korkusu var içimde örnek olarak geçti kaldı diye hatırlatıp durmasaydınız keşke 😂

  • @ramazanozcan2384
    @ramazanozcan2384 Год назад

    int a = 0;
    void setup() {
    Serial.begin(9600);
    }
    void loop() {
    a++;
    if ((a % 3 == 0) && (a % 5 == 0) ) {
    Serial.print(a);
    Serial.println("BOOOM");
    }
    else if (a % 3 == 0) {
    Serial.print(a);
    Serial.println("*");
    }
    else if (a % 5 == 0) {
    Serial.print(a);
    Serial.println("#");
    }
    else {
    Serial.println(a);
    }
    delay(500);
    }

  • @kadiraydogan2630
    @kadiraydogan2630 11 месяцев назад +1

    int i = 0;
    void setup() {
    Serial.begin(9600);
    }
    void loop() {
    i = i + 1;
    if (i % 5 == 0 && i % 3 == 0) {
    Serial.print("i=");
    Serial.print(i);
    Serial.println("BOOM");
    }
    else if (i % 3 == 0) {
    Serial.print("i=");
    Serial.print(i);
    Serial.println("*");
    } else if (i % 5 == 0) {
    Serial.print("i=");
    Serial.print(i);
    Serial.println("#");
    } else {
    Serial.print("i=");
    Serial.println(i);
    }
    delay(500);
    }

  • @ubeydullahkaya4466
    @ubeydullahkaya4466 26 дней назад

    int a = 1;
    void setup() {
    Serial.begin(9600);
    Serial.println("a:");
    Serial.println(a);
    }
    void loop() {
    if (a < 100) {
    a++;
    Serial.print(a);
    if (a % 5 == 0 && a % 3 == 0)
    Serial.print("BOOOM");
    else if (a % 3 == 0)
    Serial.print("*");
    else if (a % 5 == 0)
    Serial.print("#");
    Serial.println("");
    }
    }

  • @cevatsar6604
    @cevatsar6604 Год назад +1

    pekala istenileni nasıl yapıcağımı buldum ancak tam olarak anlayamadım örneğin kullandığım ifadelerden biri:
    if(a%3 == 0 ) bir şekilde sayının 3 e bölünüp bölünmediğini tespit ediyor ancak ben " % " ve tek bir tane " & " ne işe yarıyor bilmiyorum
    yine de çalışan kod şöyle:
    int a = 0;
    void setup() {
    Serial.begin(9600);
    }
    void loop() {
    a= a + 1;
    if ((a%3 ==0 ) && (a%5 == 0))
    {
    Serial.print("a=");
    Serial.println("boom");
    }
    else if (a%3 == 0)
    {
    Serial.print("a=");
    Serial.print(a);
    Serial.println("*");
    }
    else if (a%5 == 0)
    {
    Serial.print("a=");
    Serial.print(a);
    Serial.println("#");
    }
    else
    {
    Serial.print("a=");
    Serial.println(a);
    }

    }

  • @cavidshahverdiev
    @cavidshahverdiev Год назад +2

    Denetleyici if şartı doğru olursa sonraki else if'i veya else'i umursamaz

  • @ramazanoguz4132
    @ramazanoguz4132 Год назад +1

    selamlar yarım çalışan bir kod buldum ama tam olarak düzeltemedim
    int a = 0;
    void setup() {
    Serial.begin(9600);
    }
    void loop() {

    a = a + 1;
    Serial.println(a);
    if (a % 15 == 0) {
    Serial.print("BOOOM");
    }
    else if(a%3==0){
    Serial.print("*");
    }
    else if(a%5==0){
    Serial.print("#");
    }
    delay(1000);
    }
    ama böyle yapınca sonuç aşağıdaki gibi çıkıyor
    1
    2
    3
    *4
    5
    #6
    *7
    8
    9
    *10
    #11
    12
    *13
    14
    15
    BOOOM16
    şeklinde sonuç veriyor acaba nasıl düzeltebilirim

    • @XKurtAdamX
      @XKurtAdamX Год назад

      Nerde hata olduğunu anladım gibi
      Println yerine print yaz print yerine de println yaz

  • @ardailter2525
    @ardailter2525 2 месяца назад

    int a = 0;
    void setup() {
    Serial.begin(9600);
    while (a < 100)
    {
    a++;
    if (a % 15 == 0) {
    Serial.println ("BOOOM");
    }
    else if (a % 3 == 0 ) {
    Serial.print (a);
    Serial.println ("*");
    }
    else if (a % 5 == 0) {
    Serial.print (a);
    Serial.println ("#");
    }
    else Serial.println(a);
    delay(500);
    }
    }
    void loop() {
    }

  • @enginogretmen3220
    @enginogretmen3220 7 месяцев назад

    int x;
    void setup() {
    Serial.begin(9600);
    x = 1;
    }
    void loop() {
    x = x + 1;
    if (x

  • @brhm6812
    @brhm6812 2 года назад +1

    Kodu yazdım ama bunun uzun yol olduğunu düşünüyorum, bundan daha kısa yolunu bulan varsa bana anlatabilir mi? kodu yanıta ekleyeceğim isteyen bakabilir.

    • @brhm6812
      @brhm6812 2 года назад

      int n = 0;
      int b;
      int c;
      void setup() {
      Serial.begin(9600);
      }
      void loop() {
      n = n + 1;
      Serial.println(n);
      delay(400);
      n = n + 1;
      Serial.println(n);
      delay(400);
      n = n + 1;
      Serial.print(n);
      c = c + 3;
      if ( n = c)
      Serial.println("#");
      delay(400);
      n = n + 1;
      Serial.println(n);
      delay(400);
      n = n + 1;
      Serial.print(n);
      b = b + 5;
      if ( n = b)
      Serial.println("*");
      delay(400);
      n = n + 1;
      Serial.print(n);
      c = c + 3;
      if ( n = c)
      Serial.println("#");
      delay(400);
      n = n + 1;
      Serial.println(n);
      delay(400);
      n = n + 1;
      Serial.println(n);
      delay(400);
      n = n + 1;
      Serial.print(n);
      c = c + 3;
      if ( n = c)
      Serial.println("#");
      delay(400);
      n = n + 1;
      Serial.print(n);
      b = b + 5;
      if ( n = b)
      Serial.println("*");
      delay(400);
      n = n + 1;
      Serial.println(n);
      delay(400);
      n = n + 1;
      Serial.print(n);
      c = c + 3;
      if ( n = c)
      Serial.println("#");
      delay(400);
      n = n + 1;
      Serial.println(n);
      delay(400);
      n = n + 1;
      Serial.println(n);
      delay(400);
      n = n + 1;
      Serial.print(n);
      c = c + 3;
      b = b + 5;
      if ( n = b = c)
      Serial.println(" BOOOM!!!");
      delay(400);
      }

  • @abailetisim1276
    @abailetisim1276 2 года назад +1

    Komutu yazmakta zorlandım. cevabı paylaşır mısınız?

  • @salihgurbuz2344
    @salihgurbuz2344 2 года назад +1

    Bu konular çok önemli arkadaşlar. Ömer abi çok iyi anlatıyor ama yinede anlamadığınız yer olursa anlayana kadar buradan sorun veya Google'a aratın. Kolay gelsin. :)

  • @ardakarazaim8695
    @ardakarazaim8695 3 месяца назад

    sayıyı 100'e nasıl sınırlayacağımı anlayamadımda yardımcı olur musunuz?

  • @salihkutlu318
    @salihkutlu318 11 месяцев назад +1

    Bu soruyu çözmek için bir loop döngüsü gerekiyor. Başlatmayı biliyoruz ama durdurmayı bilmiyoruz. 100 döngü tamamlanıp her sayı için mantıksal değerlendirme yapıldıktan ve sonuç ekrana yazdırıldıktan sonra döngü nasıl sonlandırılacak?

    • @ubeydullahkaya4466
      @ubeydullahkaya4466 26 дней назад

      void loop içerisinin tamamını kapsayacak şekilde if (sayı

  • @ilhanylmaz886
    @ilhanylmaz886 2 месяца назад

    öncelikle çok güzel anlatıyorsunuz emeğiniz için sağolun
    derslere başlayalı 3 hafta oldu ilerledikçe kafam daha çok karışıyor bu normal mi? seyrederken çok basit geliyor haa yaparım ben bunu hatta daha karmaşık şeylerde yaparım diyorum ama verdiğiniz örneği bile yapamadım çok sinirledim merak ettim yapay zekaya sordum kodu o yazdı :)
    void setup() {
    Serial.begin(9600); // Seri iletişimi başlat
    }
    void loop() {
    for (int i = 1; i

    • @Robo90com
      @Robo90com  2 месяца назад

      merhaba, motivasyonunuzu kaybetmeyin. Böyle olması çok normal. ilerledikçe ve zaman geçipde başka insanların kodlarını gördükçe sağlam bir şekilde oturacak mantık. kursu tamamlayın aşinalığı yakalayıp başka projelere bakmaya başlayın.

    • @ilhanylmaz886
      @ilhanylmaz886 2 месяца назад

      @@Robo90com inşallah bitireceğim. okyanusa düştük bir kere yüzmeyi öğrenmekten başkan çaremiz yok. Size de çalışmalarınız da başarılar.

  • @muhammedtahaozer1366
    @muhammedtahaozer1366 7 месяцев назад

    ya bende sorun var yada ardunioda yav kod herşey doğru ama not yüksek olduğu zamanda geçtiniz kaldınız diyor düşük olduğu zamanda nolur birisi yardım etsin
    int Not = 70;
    void setup() {
    Serial.begin(9600);
    if (Not >= 75);
    Serial.println("Geçtiniz");
    if (Not

  • @huseyinbekel4329
    @huseyinbekel4329 11 месяцев назад

    Hocam mrb
    Akvaryum yemleme için kodum hazır 12 saatte bı çalışıyor.
    Ben istiyorum ki
    bitanede buton olsun
    1 kere Bastığım zaman bı kere yemlesin
    12 saatte bı yemlemeye devam etsin
    Butonla reset atmak gibi yani
    Yardımcı olursanız sevinirim

  • @ufukcelikel
    @ufukcelikel 2 года назад +1

    Öncelikle merhaba ömer bey seriyi heyecanla takip ediyoruz ilk videonuzda bu serinin bütün videolarının önceden çekili olduğunu söylemiştiniz bu seri toplam kaç video olacak acaba

    • @Robo90com
      @Robo90com  2 года назад +4

      Merhaba, ilginiz için teşekkürler. Aslında seri 30 küsür videoda bitiyor. Bu bölümlerin çekimi yapıldı. Fakat devamında biraz daha teknik konulara girip( kütüphane yazmak vb.), çeşitli modül ve sensörler hakkında bilgi veren ek videolarda olacak onlarla beraber 60'ı aşar zamanla gelecek o videolarda.

  • @furkankurt8478
    @furkankurt8478 8 месяцев назад

    int a = 0;
    void setup() {

    Serial.begin(9600);
    }
    void loop() {
    a++;
    if ((a % 3 == 0) && (a % 5 == 0)) {
    Serial.print(a);
    Serial.println("boom");
    }
    else
    Serial.println(a);
    else if (a % 3 == 0) {
    Serial.print(a);
    Serial.println("*");
    }
    else if (a % 5 == 0) {
    Serial.print(a);
    Serial.println("#");
    }
    }

    • @furkankurt8478
      @furkankurt8478 8 месяцев назад

      yazdığım kod sonsuza kadar gidiyor yüze geldiğinde nasıl durduracağım

    • @amedlyykurt408
      @amedlyykurt408 7 месяцев назад

      İf(i

  • @metinemare
    @metinemare 11 месяцев назад

    baya bir uğraştım ama sonunda yapabildim.
    int i = 1;
    void setup() {
    Serial.begin(9600);
    i = i++;

    }
    void loop() {

    if((i

  • @multicontt
    @multicontt Год назад

    3'e ve 5'e , hem 3'e hem de 5'e bölünebilme kuralını karşılayan sayıların birden fazla kez yazılması dışında kod gayet iyi çalışıyor.
    int sayi = 1;
    void setup() {
    Serial.begin(9600);
    pinMode(13, OUTPUT);
    }
    void loop() {
    if (sayi < 100) {
    Serial.println(sayi++);
    delay(1000);
    }
    if (sayi % 3 == 0) {
    Serial.print(sayi), Serial.println("*");
    }
    if (sayi % 5 == 0) {
    Serial.print(sayi), Serial.println("#");
    }
    if ((sayi % 3 == 0) && (sayi % 5 == 0)) {
    Serial.print(sayi), Serial.println(" BOOOM");
    }
    while (sayi == 100) {
    digitalWrite(13, 1);
    delay(1000);
    digitalWrite(13, 0);
    delay(1000);
    }
    }

  • @furkanzobu8430
    @furkanzobu8430 10 месяцев назад

    Merhaba arduino kartını pcye bağlamadan seri monitörü çalıştırmak mümkün mü

  • @XKurtAdamX
    @XKurtAdamX Год назад

    Ben değişkeni sayı yaptım çalışmadı Türkçe karakterleri kullanınca hata veriyor (bu sorunu yaşayanlara)

  • @TevfikBEKTAS
    @TevfikBEKTAS 2 года назад +1

    Teşekkürler hocam.

  • @farukdemir1928
    @farukdemir1928 Год назад

    Merhaba, Epson printerden söktüğüm bir renkli ekran var ,Bu ekranı Arduino ile nasıl kullanabilirim ? çünkü kütüphanesi yok

  • @emirhankalaagas1546
    @emirhankalaagas1546 2 года назад

    Abi konuyla ilgili değil ama canbus2515 ile alakalı hiç videon ya da yazın varmı? Ya da bildiğin bir yer varmı düzgün kayna bulamadımda.

  • @JoyBuzz0
    @JoyBuzz0 2 месяца назад

    : )

  • @ahmedhidayeti2835
    @ahmedhidayeti2835 Год назад +1

    #12 tamamlandı

  • @mrunes
    @mrunes 8 месяцев назад

    Burada kaldım, yarın devam inşallah 🌹 emeklerinize sağlık...

  • @ismailbeyter6691
    @ismailbeyter6691 10 месяцев назад

    Çok iyi bi anlatım bundan sonra sende ders alacam.

  • @CihangirCeylan-uq8pv
    @CihangirCeylan-uq8pv Год назад

    Muhteşem bir video şartlı ifadelerin sırasının değişmesiyle oluşabilecek hataları başka bir kanalda dinleyebileceğimi sanmıyorum bu konuya yer verilse bile bu kadar açık olamaz kesinlikle

  •  Год назад +2

    int number = 1;
    int a; // a 15 e bölünüp bölünmediğine bakmak için
    int b; // b 3 e bölünüp bölünmediğine bakmak için
    int c; // c 5 e bölünüp bölünmediğine bakmak için
    void setup() {
    Serial.begin(9600);
    }
    void loop() {
    if (number

  • @cevatsar6604
    @cevatsar6604 Год назад

    bir sayının 3e bölümünün sonucunun tam sayıya eşit olup olmadığını arduinoya nasıl kontrol ettirebilirim?
    benim aklıma int belirli tam sayılarda tanımlı olduğu için şunu yazmak geldi ama olmadı
    if (a/3 == int );

    • @bugraalpaydn1783
      @bugraalpaydn1783 Год назад +1

      mod alarak kontor etmen lazım yani
      if( a % 3 == 0);
      bu komutla beraber a sayısının 3 e tam bölünüp bölnünmediğini kontrol etmiş olursun.

    • @ahmedhidayeti2835
      @ahmedhidayeti2835 Год назад

      Bir önceki videolarda bahsedildi bu konu

  • @onurody
    @onurody 2 года назад +1

    #12 tamamlandı

    • @Robo90com
      @Robo90com  2 года назад

      Örnek kodu da yazdınız mı ? Sizin cevapları bekliyorum :)

    • @onurody
      @onurody 2 года назад

      @@Robo90com valla şöyle bişey yazdım ama pc de denemedim
      int oda_sıcaklık=21; //x'e 21 değerini atadım
      void loop() {
      if (sıcaklık >= 24) {
      Serial.println("Sıcaklık 21in üzerinde");
      }
      else if (sıcaklık >= 20) { // 20

  • @cars275
    @cars275 7 месяцев назад

    müthiş...

  •  2 года назад

    Süperrrrr yeni videoooo

  • @TheShavrotin
    @TheShavrotin Год назад

    teşekkürler.

  • @abdullahyilmaz5284
    @abdullahyilmaz5284 2 года назад

    Ben şu şekilde yaptırabildim. Ama doğrusu bu değil gibi. else kullanmadım. Biraz uzun gibi oldu. Yoruma kodu ekliyorum.

    • @abdullahyilmaz5284
      @abdullahyilmaz5284 2 года назад

      int deger = 0;
      void setup() {
      Serial.begin(9600);
      }
      void loop() {
      deger++;
      Serial.print(deger);
      if (deger == 100) {
      deger = 0;
      }
      if (deger % 3 == 0) {
      Serial.print("*");
      }
      if (deger % 5 == 0) {
      Serial.print("#");
      }
      Serial.println();
      }

    • @abdullahyilmaz5284
      @abdullahyilmaz5284 2 года назад

      Bugün yeni ders (13) yayınlanınca bu örneği while döngüsü ile daha düzgün yapabileceğimi fark ettim. Ayrıca önceki örneğimde BOOM ekleymeyi atlamışım. Bu sefer yoruma yeni kodu ekliyorum. İstenilen doğru kod bu mu bilmiyorum ama yine de eklemek istedim.

    • @abdullahyilmaz5284
      @abdullahyilmaz5284 2 года назад

      int deger = 0;
      void setup() {
      Serial.begin(9600);
      while (deger < 100) {
      deger++;
      Serial.print(deger);
      if ((deger % 3 == 0) && !(deger % 5 == 0)) {
      Serial.print("*");
      }
      if ((deger % 5 == 0) && !(deger % 3 == 0)) {
      Serial.print("#");
      }
      if ( (deger % 3 == 0) && (deger % 5 == 0) ) {
      Serial.print(" BOOOM");
      }
      Serial.println();
      }
      }
      void loop() {
      }

  • @furkanugur1179
    @furkanugur1179 Год назад

    merhaba, aşağıdaki yazmış olduğum if kodlarda belirtilen süreler ilk komutta düzgün çalışıyor ama sonda süreler arasında her defasında farklar artmaktadır. Yardımcı olabilirseniz sevirim.
    if(simdikizaman - oncekizaman4 == 20)
    {
    for (pos = 18; pos >= 0; pos-=1){sg904.write(pos); delay(10);}
    for (pos = 0; pos = 0; pos-=1){sg906.write(pos); delay(5);}
    for (pos = 0; pos = 0; pos-=1){sg902.write(pos); delay(5);}
    for (pos = 0; pos = 0; pos-=1){sg903.write(pos); delay(5);}
    for (pos = 0; pos