Booleanskt = true or false - Villkor

Permalänk

Booleanskt = true or false - Villkor

Hej

Jag läser programmering 1 med C# och jobbar nu med booleska datatyper. Har en övning där jag ska:
1.) Skapa en boolsk värde och tilldela ett värde! Boolesk typ kan bara vara true eller falsk eller hur?!
2.) Skriv ett villkor som kontrollerar om den boolska datatypen är sant.
3.) Om sant skriv en sak.
4.) Annars skriv något annat.

Vad jag vet är det alltid sant eller falskt?!

En rätt klurig en

Mvh Fredrik

Visa signatur

Computer: Windows 11, 64-bit, Intel 285k, MSI MEG Z890 Ace, 64GB RAM,
MSI GeForce RTX 5080 16GB Vanguard SOC Launch

Permalänk
Medlem

Det må vara sent, men jag svarar JA

Förstår inte vad du vill fråga om,

Är det en fråga efter tips hur du ska lösa uppgiften så föreslår jag dig att ta en titt på if-satser.

Är det en fråga eller påstående om boolean kan användas till en funktion som är true/false så ja.

Kika i dina böcker/pdf/wiki de kommer säkert hjälpa dig på traven.

Lycka till

Visa signatur

Just playing for fun ‾\o.0/‾

Permalänk
Medlem

False = 0
True = "Vilket värde som helst som inte är 0"

Visa signatur

Every time I see some piece of medical research saying that caffeine is good for you, I high-five myself. Because I'm going to live forever.
~ Linus Torvalds (2010-08-03)

Permalänk
Medlem

Nu läser jag Java men i grunden borde det vara liknande.

Börja med att skapa en variabel och tilldela den ett true eller false värde. Gör sen en if-sats för true med det du vill göra där, sen gör du en else efter det för fallet där variabeln är falskt.

Visa signatur

Speldator: i5 4670k stock | 8GB ram | Asus Z87-plus | Xonar Essence STX | SSD: Intel g2 , Samsung 830 256gb | R9 290 Tri-x | Define R4| Win 8 | Noctua nh-u12p | Qpad Mk-50
marinlik.wordpress.com/ Min blogg för nedbrytning av spel och diverse andra artiklar om NFL
500px.com/niclasbrundell

Permalänk
Medlem

nae den va inte så klurring, mycket mycket simpel om jag får säga så själv.

Permalänk
Medlem

bool bla = true; // 1)
if (bla) // 2)
Console.WriteLine("sant"); // 3)
else // 4)
Console.WriteLine("falskt"); // 4)

Inte så klurigt, din lärare vill helt enkelt att du ska lära dig if-satser.

Visa signatur

9950X3D - 3090 - 2x48GB 6000@30

Permalänk
Skrivet av celoz:

bool bla = true; // 1)
if (bla) // 2)
Console.WriteLine("sant"); // 3)
else // 4)
Console.WriteLine("falskt"); // 4)

Inte så klurigt, din lärare vill helt enkelt att du ska lära dig if-satser.

Hej

Det är en if och else sats jag har gjort men om vi utgår från mitt nedan:
bool skriva = true;
Console.Write("Du valde: "); // Utskrift till konsolen + det "nr" du skrev
string nr = Console.ReadLine();
if (skriva)
{
Console.WriteLine("Skriva är sant"); // Utskrift till konsolen
Console.ReadLine(); // Bara så du kan se att jag gjort rätt
}
else
{
Console.WriteLine("Skriva är falskt"); // Utskrift till konsolen
Console.ReadLine(); // Bara så du kan se att jag gjort rätt
}

Skriva variabeln är alltid true i mitt fall så den kommer alltid att välja "if" villkoret!. Jag vill att den väljer det om man skriver "skriva" i konsolen och väljer "else" om man skriver fel!

Ge mig bara en ledtråd till lösningen

Din fungerar likadant så det är nog i sin ordning, grejen är nog den att skriva kommer alltid att vara true//
Mvh Fredrik

Visa signatur

Computer: Windows 11, 64-bit, Intel 285k, MSI MEG Z890 Ace, 64GB RAM,
MSI GeForce RTX 5080 16GB Vanguard SOC Launch

Permalänk
Medlem

Du kan ju titta på strängjämförelsefunktioner. Beroende på vad man matar in så vill du att den ska ta olika vägar i din if-sats, alltså måste du jämföra input med ett givet värde, "skriva" i ditt fall. ungefär:

if input == "skriva" <fall1> else <fall2>

Permalänk
Medlem

Om du nu måste använda din bool variabel, så kan du göra typ så här.

if (nr.CompareTo("skriva")==0) { skriva = true; } else { skriva = false; }

Visa signatur

Corsair 16GB (4x4096MB) CL9 1600Mhz | Asus P8Z77-V PRO |
Samsung SSD Basic 830-Series 256GB | Intel Core i7 3770K 3,5Ghz |
Asus Xonar Essence STX | Noctua NH-U9B SE2 | Antec Performance One P280 | Corsair HX 850W 80+ Gold Modulär | MSI GTX 770

Permalänk
Medlem
Skrivet av NoPaiN^:

Om du nu måste använda din bool variabel, så kan du göra typ så här.

if (nr.CompareTo("skriva")==0) { skriva = true; } else { skriva = false; }

Eller ännu lättare
skriva = (nr.CompareTo("skriva")==0);

Visa signatur

"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." - Brian W. Kernighan

Permalänk
Medlem
Skrivet av ePoint:

Eller ännu lättare
skriva = (nr.CompareTo("skriva")==0);

Så sant så sant, tänkte bara göra det lättläst för TS

Visa signatur

Corsair 16GB (4x4096MB) CL9 1600Mhz | Asus P8Z77-V PRO |
Samsung SSD Basic 830-Series 256GB | Intel Core i7 3770K 3,5Ghz |
Asus Xonar Essence STX | Noctua NH-U9B SE2 | Antec Performance One P280 | Corsair HX 850W 80+ Gold Modulär | MSI GTX 770

Permalänk
Skrivet av NoPaiN^:

Om du nu måste använda din bool variabel, så kan du göra typ så här.

if (nr.CompareTo("skriva")==0) { skriva = true; } else { skriva = false; }

Problemet är att jag måste använda min bool variabel för villkoret som ska kontrollera om det är sant eller falskt!

Om jag inte anger att jag ska skriva någon input kommer villkoret att alltid vara sant. Jag måste göra något i stil med:
Console.WriteLine("Är att det sant att man skriver med penna på papper?"); // Utskrift till konsolen
Console.WriteLine("Svara: Sant eller falskt!");// Utskrift till konsolen
Console.Write("Du svarade: ");// Utskrift till konsolen
Console.ReadLine();// Bara så du kan se att jag gjort rätt
bool skriva = true;
if (skriva==2<3) // Villkoret är alltid sant och if väljs då alltid
{
Console.WriteLine("Skriva är sant"); // Utskrift till konsolen
Console.ReadLine(); // Bara så du kan se att jag gjort rätt
}
else
{
Console.WriteLine("Skriva är falskt"); // Utskrift till konsolen
Console.ReadLine(); // Bara så du kan se att jag gjort rätt
}
}

Jag kan ju bara ha satsen "if" till (skriva) men då kommer jag ha chansen att kunna välja från ett villkor?

Klart jag kan ha en annan variabel för false men då använder jag inte boolranen. Jag är lätt förvirrad av detta med bool

Ett villkor är ju valbar mellan sant eller falsk!

Visa signatur

Computer: Windows 11, 64-bit, Intel 285k, MSI MEG Z890 Ace, 64GB RAM,
MSI GeForce RTX 5080 16GB Vanguard SOC Launch

Permalänk
Medlem

Nivån på kursen och uppgiften tror jag inte det är tänkt på det sättet.
Utan det är mer tänkt att lära sig bool och if-satser.
Jag tror mer att man ska svara med 0 för falskt och typ 1 för sant, hör med din lärare hur det är tänkt.
Det känns helt fel att arbeta med en bool om du ska kolla "strängar".

Visa signatur

Corsair 16GB (4x4096MB) CL9 1600Mhz | Asus P8Z77-V PRO |
Samsung SSD Basic 830-Series 256GB | Intel Core i7 3770K 3,5Ghz |
Asus Xonar Essence STX | Noctua NH-U9B SE2 | Antec Performance One P280 | Corsair HX 850W 80+ Gold Modulär | MSI GTX 770

Permalänk

Precis!

Man kanske har för höga krav så här i början?!

Visa signatur

Computer: Windows 11, 64-bit, Intel 285k, MSI MEG Z890 Ace, 64GB RAM,
MSI GeForce RTX 5080 16GB Vanguard SOC Launch

Permalänk
Skrivet av celoz:

bool bla = true; // 1)
if (bla) // 2)
Console.WriteLine("sant"); // 3)
else // 4)
Console.WriteLine("falskt"); // 4)

Inte så klurigt, din lärare vill helt enkelt att du ska lära dig if-satser.

Jag har gjort som du, se nedan:
bool skriva = true;
if (skriva) // Villkoret är alltid sant och if väljs alltid
{
Console.WriteLine("Skriva är sant"); // Utskrift till konsolen
Console.ReadLine(); // Bara så du kan se att jag gjort rätt
}
else
{
Console.WriteLine("Skriva är falskt"); // Utskrift till konsolen
Console.ReadLine(); // Bara så du kan se att jag gjort rätt

Därmed kommer alltid "true" satsen att väljas, hmm kanske det som ändå menas med ett villkor, jo för sig är det rätt men enligt mig finns det alltid två alternativ i ett villkor. Det verkar dock inte så i detta fall!

Mvh Fredrik

Visa signatur

Computer: Windows 11, 64-bit, Intel 285k, MSI MEG Z890 Ace, 64GB RAM,
MSI GeForce RTX 5080 16GB Vanguard SOC Launch

Permalänk
Medlem

static void Main(string[] args)
{
string answer;
// string question;
bool skriva = false;

Console.WriteLine("Is this a boolean example? (yes/no)");
answer = Console.ReadLine().ToLower();
answer.Trim(); // ta bort allt space innan och efter "yes" och "no"
if (answer == "yes")
{
skriva = true;
Console.Write("skriva är: " + skriva);
}
else
{
Console.WriteLine("skriva är: " + skriva);
}
Console.ReadLine();
}

den har va det som jag skickade till min lärare men hans svar va: "Det är variabeln skriva du skall kontrollera med en if-sats om den är true eller false, inte variabeln answer."

Permalänk
Medlem

så jag provade fixa det på ngt bättre sätt men det gick inte.

namespace boolean_skriva
{
class Program
{
static void Main(string[] args)
{
string answer;
bool skriva = true;

Console.WriteLine("Is this a boolean example? (True/False)");
answer = Console.ReadLine().ToLower();
answer.Trim(); // ta bort allt space innan och efter "yes" och "no"
if (skriva)

{
Console.Write("True");
}
else
{
skriva = false;
Console.WriteLine("False");
}
Console.ReadLine();
}
}
}

// då kommer alltid att vara "true" .... någon som kan hälpa mig? ... jag kan inte skriva så bra på svenksa så ber mig ursakt för det.

Permalänk
Medlem
Skrivet av Mystogan:

så jag provade fixa det på ngt bättre sätt men det gick inte.

namespace boolean_skriva
{
class Program
{
static void Main(string[] args)
{
string answer;
bool skriva = true;

Console.WriteLine("Is this a boolean example? (True/False)");
answer = Console.ReadLine().ToLower();
answer.Trim(); // ta bort allt space innan och efter "yes" och "no"
if (skriva)

{
Console.Write("True");
}
else
{
skriva = false;
Console.WriteLine("False");
}
Console.ReadLine();
}
}
}

// då kommer alltid att vara "true" .... någon som kan hälpa mig? ... jag kan inte skriva så bra på svenksa så ber mig ursakt för det.

skriva = answer.Equals("yes");

Skickades från m.sweclockers.com

Permalänk
Medlem