Permalänk

nybörjare behöver hjälp! c++

Hej,
jag blir snart tokig! jag hoppas att någon kan hjälpa mig
har fått en uppgift som ska resultera i följande:

ange ett tal: 3
*
**
***
ange ett tal: 8
*
**
***
****
*****
******
*******
********
osv tills siffran 0 matas in.
jag förstår att jag måste använda 'for' och flera gånger i varandra. men jag får inte ihop det. som nybörjare man är har jag trixat i flera dagar fram och tillbaka men inte fått riktigt rätt, det närmaste jag kommer är att alla raderna som skrivs ut har 'rätt'antal stjärnor men det är ju stegringen som jag är ute efter.... nu har jag klurat så länge på detta, har ingen i min närhet att bolla med så nu står mitt hopp till er! //Helena

Permalänk
Medlem

Kan inte c++, men i java skulle man kunna köra en for sats och i den lägga till en stjärna i en string för vart varv for-satsen kör.

Skulle tro det finns något liknande man kan göra i c++.

Permalänk
Permalänk
Medlem

Gjorde ett exempel i Javascript, samma princip
http://jsfiddle.net/63X9G/

var string = "" for(var i = 1; i <= 10; i++) { string += "*" document.write(string) document.write("<br/>") }

Resulterar i

* ** *** **** ***** ****** ******* ******** ********* **********

Permalänk
Medlem
Skrivet av kattenpluto:

Hej,
jag blir snart tokig! jag hoppas att någon kan hjälpa mig
har fått en uppgift som ska resultera i följande:

ange ett tal: 3
*
**
***
ange ett tal: 8
*
**
***
****
*****
******
*******
********
osv tills siffran 0 matas in.
jag förstår att jag måste använda 'for' och flera gånger i varandra. men jag får inte ihop det. som nybörjare man är har jag trixat i flera dagar fram och tillbaka men inte fått riktigt rätt, det närmaste jag kommer är att alla raderna som skrivs ut har 'rätt'antal stjärnor men det är ju stegringen som jag är ute efter.... nu har jag klurat så länge på detta, har ingen i min närhet att bolla med så nu står mitt hopp till er! //Helena

Ha en for-loop som räknar upp storleken på värdet (T ex, om värdet är 3, så ska for-loopen köras 3 ggr). Sen kan du göra på olika sätt, ena är som Jakkra nämnde, men tänkte också nämna ett alternativ.

I for-loopen har du ännu en for-loop, denna loopar runt ett antal gånger av en variabel, som utanför den inesrta forloopen ökas.

Lite dålig pseduo kod, antag att 5 är vårat värde

Int i = 1;
For(Loopa 5 ggr){
for(loopa i antal ggr){
cout << '*';
}
i = i + 1; // Alternativ i++
cout << '\n';
}

Permalänk
Medlem

Gjorde det i Java.

Scanner in=new Scanner(System.in); System.out.print("Ange ett tal:"); int tal= in.nextInt(); String svar="" ; for (int i=0;i<tal;i++){ svar=svar+"*"; System.out.println(svar); }

Eller så här man kan matar in flera gånger med while (true)

Scanner in=new Scanner(System.in); while(true){ System.out.print("Ange ett tal:"); String svar="" ; int tal= in.nextInt(); for (int i=0;i<tal;i++){ svar=svar+"*"; System.out.println(svar); } }

Räcker med nog 1 for-loop även för c++

Permalänk
Medlem

Här är ett exempel i C#(borde va enkelt att skriva om till C++)

int input = 0; // Variabel för input do // Loop som körs en gång innan något kollas { Console.Write("skriv in ett tal: "); input = Convert.ToInt32(Console.ReadLine()); // Input string asterisk = ""; // Variabel för att hålla alla stjärnor/asteriskar or whatever for (int i = 0; i < input; i++)// Loop som körs input antal gånger { asterisk += "*"; // En asterisk läggs till varje gång den körs Console.WriteLine(asterisk); // strängen skrivs ut } } while (input > 0); // Loopen körs igen om inputen var mer än 0, annars avslutas programmet

Permalänk
Medlem

Här är min kod i c++, hoppas du förstår. Den kan säkert bli lite smidigare.

#include<iostream> #include<cstdlib> using namespace std; int main() { int oendligloop = 1; while(oendligloop < 2) { int antal; cout << "ange ett tal: "; cin >> antal; string y(""); for(int i=1;i<=antal;i++) { int a =0; while(a < i) { a++; y+="*"; } a = 0; cout << y; y =(""); cout << endl; } cout << y; } return 0; }

Permalänk
Skrivet av Reyintaz:

Ha en for-loop som räknar upp storleken på värdet (T ex, om värdet är 3, så ska for-loopen köras 3 ggr). Sen kan du göra på olika sätt, ena är som Jakkra nämnde, men tänkte också nämna ett alternativ.

I for-loopen har du ännu en for-loop, denna loopar runt ett antal gånger av en variabel, som utanför den inesrta forloopen ökas.

Lite dålig pseduo kod, antag att 5 är vårat värde

Int i = 1;
For(Loopa 5 ggr){
for(loopa i antal ggr){
cout << '*';
}
i = i + 1; // Alternativ i++
cout << '\n';
}

Oändligt tacksam!
just var man ökar värdet på styrvariabeln var nog boven, och att den behövdes återställas innan loopen kördes igen. se så fint det blev!
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int rad=1;
while(rad!=0)
{
cout<<"Ange antal rader! 0 för avslut! :";
cin>>rad;
int k=1;
for(int i=0;i<rad;i++)
{
for(int j=0;j<k;j++)
{
cout<<"*";
}
k++;
cout<<endl;
}
}
cout<<"program slut!";
getch();
return 0;
}
är ju inte hemma på något av de andra språken heller (ännu) vilket gör det knepigt att översätta för en rookie men stort Tack! för er hjälp och på återseende misstänker jag!

Permalänk
Medlem

Testade själv att göra en. Minsta jag kan göra just nu

#include <iostream> using namespace std; int main() { // Variabler int input = 0; int trappa= 0; // Meny cout << "Please enter your number : "; cin >> input; while(trappa < input) { for(int i = 0; i <= trappa; i ++) { cout << "*"; } trappa ++; cout << endl; } return 0; }

Visa signatur

Intel Core i7 4790k | ASUS STRIX GTX 980 OC | 1TB SAMSUNG 850 EVO

Permalänk
Hedersmedlem
Skrivet av kattenpluto:

Oändligt tacksam!
just var man ökar värdet på styrvariabeln var nog boven, och att den behövdes återställas innan loopen kördes igen. se så fint det blev!
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int rad=1;
while(rad!=0)
{
cout<<"Ange antal rader! 0 för avslut! :";
cin>>rad;
int k=1;
for(int i=0;i<rad;i++)
{
for(int j=0;j<k;j++)
{
cout<<"*";
}
k++;
cout<<endl;
}
}
cout<<"program slut!";
getch();
return 0;
}
är ju inte hemma på något av de andra språken heller (ännu) vilket gör det knepigt att översätta för en rookie men stort Tack! för er hjälp och på återseende misstänker jag!

Som du ser får vissa sin kod i snygga rutor som gör det lite mer läsbart. Det görs med code-taggar

<code> Här skrivs kod fast med hakar [ ] istället för < > </code>