Çözüldü Trafik Sinyalizasyon Sistemi ödevi

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

41326

Kilopat
Katılım
28 Aralık 2014
Mesajlar
1.703
Çözümler
12
Arkadaşlar sizden fikir almam lazım. Bir ödevim var ve bir noktada takıldım. Ödevim ekteki fotoğrafta var. Ödev de mesela 1. Adım da "Eğer kuzey araç sayım sensörü 30’dan büyükse kuzey yeşil ve güney kırmızı yanacaktır." demekte. Şimdi ben değişkenleri atadım tek tek ve temel kodları yazdım (Ekte var). Sorum şu maddede bana kuzey sayım sensörü 30'dan büyükse kuzeyin yeşil yanmasını güneyin kırmızı yanmasını istiyor. Kuzey değişkenini nasıl yeşil olarak yakacağım onu bir türlü beceremedim. Kaç kere tüm kodları silip tekrar başladım projeye ama beceremedim. Twincat adında acayip sınırlı kaynağa sahip bir program kullandırtıyor hoca. Bilginiz varsa yardımcı olursanız çok sevinirim.
Screenshot_2.png
 

Dosya Ekleri

  • Screenshot_4.png
    Screenshot_4.png
    8,1 KB · Görüntüleme: 50
  • Screenshot_5.png
    Screenshot_5.png
    10 KB · Görüntüleme: 52
Çözüm
Açıkçası araçların nasıl geleceğini, sayılacağını falan pek anlamadım ben. O yüzden bu şekilde yaptım. Kullanıcıdan alıyor, sonra kontrol ediyor. Yazdırmak için de benzer şekilde if'ler kullanılabilir. Hocanız bu tip örnek yapmıştır zaten. Yapmasa bile her hocanın tarzı vardır. O kadar dersine girmişsiniz. Anlamışsınızdır tarzını.

Kod:
#include <iostream>

using namespace std;

int main(){
 
  bool northRed = false;
  bool northYellow = false;
  bool northGreen = false;
 
  bool southRed = false;
  bool southYellow = false;
  bool southGreen = false;
 
  int north = 0;
  int south = 0;
 
  cout << "Kuzey degeri: ";
  cin >> north;
  cout << "Guney degeri: ";
  cin >> south;
 
  if (north > 30){
      northRed = false;
      northYellow = false;
      northGreen = true;
      
      southRed = true;
      southYellow = false;
      southGreen = false;
  }
  else if(south > 30){
      northRed = true;
      northYellow = false;
      northGreen = false;
      
      southRed = false;
      southYellow = false;
      southGreen = true;
  }
  else{
      northRed = false;
      northYellow = true;
      northGreen = false;
      
      southRed = false;
      southYellow = true;
      southGreen = false;
  }
 
  return 0;
}
Açıkçası araçların nasıl geleceğini, sayılacağını falan pek anlamadım ben. O yüzden bu şekilde yaptım. Kullanıcıdan alıyor, sonra kontrol ediyor. Yazdırmak için de benzer şekilde if'ler kullanılabilir. Hocanız bu tip örnek yapmıştır zaten. Yapmasa bile her hocanın tarzı vardır. O kadar dersine girmişsiniz. Anlamışsınızdır tarzını.

Kod:
#include <iostream>

using namespace std;

int main(){
 
  bool northRed = false;
  bool northYellow = false;
  bool northGreen = false;
 
  bool southRed = false;
  bool southYellow = false;
  bool southGreen = false;
 
  int north = 0;
  int south = 0;
 
  cout << "Kuzey degeri: ";
  cin >> north;
  cout << "Guney degeri: ";
  cin >> south;
 
  if (north > 30){
      northRed = false;
      northYellow = false;
      northGreen = true;
      
      southRed = true;
      southYellow = false;
      southGreen = false;
  }
  else if(south > 30){
      northRed = true;
      northYellow = false;
      northGreen = false;
      
      southRed = false;
      southYellow = false;
      southGreen = true;
  }
  else{
      northRed = false;
      northYellow = true;
      northGreen = false;
      
      southRed = false;
      southYellow = true;
      southGreen = false;
  }
 
  return 0;
}
 
Çözüm
Açıkçası araçların nasıl geleceğini, sayılacağını falan pek anlamadım ben. O yüzden bu şekilde yaptım. Kullanıcıdan alıyor, sonra kontrol ediyor. Yazdırmak için de benzer şekilde if'ler kullanılabilir. Hocanız bu tip örnek yapmıştır zaten. Yapmasa bile her hocanın tarzı vardır. O kadar dersine girmişsiniz. Anlamışsınızdır tarzını.

Kod:
#include <iostream>

using namespace std;

int main(){

  bool northRed = false;
  bool northYellow = false;
  bool northGreen = false;

  bool southRed = false;
  bool southYellow = false;
  bool southGreen = false;

  int north = 0;
  int south = 0;

  cout << "Kuzey degeri: ";
  cin >> north;
  cout << "Guney degeri: ";
  cin >> south;

  if (north > 30){
      northRed = false;
      northYellow = false;
      northGreen = true;
  
      southRed = true;
      southYellow = false;
      southGreen = false;
  }
  else if(south > 30){
      northRed = true;
      northYellow = false;
      northGreen = false;
  
      southRed = false;
      southYellow = false;
      southGreen = true;
  }
  else{
      northRed = false;
      northYellow = true;
      northGreen = false;
  
      southRed = false;
      southYellow = true;
      southGreen = false;
  }

  return 0;
}
İşte ancak bu yazdığınız gibi olabiliyor, bende az önce bu şekilde işte northRed gibi değişkenler atayarak yapmaya karar verdim. Şimdi deniyorum hemen.
@Vavien. Çok teşekkür ederim. Sabahtan beri boşu boşuna uğraştım. Dediğin gibi lambaları direk "Kırmızı Lamba" gibi atasam bitmişti çoktan. Tekrardan çok teşekkürler çalışıyor program.

Not: En iyi cevabı nasıl veriyorduk ?
 

Dosya Ekleri

  • Screenshot_6.png
    Screenshot_6.png
    10,7 KB · Görüntüleme: 35
Son düzenleme:

Yeni konular

Geri
Yukarı