http://programozas11b1.blogspot.hu/2017/06/20170605-ciklusos-feladatok-otthoni.html
2. Új anyag: egymásba ágyazott ciklusok
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace egymasbaAgyazottCiklusok
{
class Program
{
static void Main(string[] args)
{
//1. feladat:
// A külső ciklus 10-szer fusson le, minden ciklusmagban írja ki,
//hogy hányadik külső ciklus-lépésben járunk.
// A belső ciklus 5-ször fusson, (futásonként) írja ki, hogy ő a belső ciklus,
//és írjon még ki egy véletlenszámot.
Console.WriteLine("1. feladat");
int i = 0;
int j = 0;
Random rnd = new Random();
while (i < 5)
{
Console.WriteLine("Külső ciklus: {0}", i + 1);
j = 0;
while (j < 3)
{
Console.WriteLine(" én vagyok a {0}. belső ciklus: {1}", j+1, rnd.Next(0, 100));
j++;
}
i++;
}
Console.ReadLine();
//2. feladat:
// Módosítsuk az előző feladatot úgy, hogy a külső és a belső ciklus más-más színnel írjon a képernyőre.
Console.WriteLine("2. feladat");
i = 0;
while (i < 10)
{
Console.BackgroundColor = ConsoleColor.Red;
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine("Külső ciklus: {0}", i + 1);
j = 0;
while (j < 5)
{
Console.BackgroundColor = ConsoleColor.Black;
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine(" én vagyok a belső ciklus: {0}", rnd.Next(0, 100));
j++;
}
i++;
}
Console.ResetColor();
Console.ReadLine();
//3. feladat:
// Lépésenkénti futtatással vizsgáljuk meg a ciklusok működését.
//4. feladat:
// Hozz létre egy 20 elemű string tömböt, melyben 10 számjegyből
//álló titkos kódokat fogsz tárolni.
// Külső ciklus:
//• menj végig minden tömbelemen;
//• helyezz el a tömbelemben egy stringgé alakított véletlen számjegyet;
// Belső ciklus, ami 9-szer ismétlődik:
//• lépésenként adj hozzá a tömbelem aktuális tartalmához egy, a fenti módon
//stringgé alakított véletlen számjegyet úgy, hogy egy stringet alkossanak.
// A külső ciklusból kilépve listázd ki a képernyőre a tömböt.
A következő feladatmegoldás a 4-es feladat továbbfejlesztése:
Console.WriteLine("4. feladat");
string[] titkos = new string[20];
i = 0;
while (i < 20)
{
titkos[i] = Convert.ToString(Convert.ToChar(rnd.Next(65, 90)));//nagybetű
Console.WriteLine(titkos[i]);
j = 0;
while (j < 8)
{
titkos[i] = titkos[i] + Convert.ToString(rnd.Next(0, 10)); //számjegy
Console.WriteLine(titkos[j]);
j++;
}
titkos[i] = titkos[i] + Convert.ToString(Convert.ToChar(rnd.Next(97, 122)));
//kisbetű
//kisbetű
Console.WriteLine(titkos[i]);
i++;
}
Console.ReadLine();
//5. feladat:
//– Oldd meg, hogy a listázás a ciklusok futása közben megvalósuljon,
//ehhez keresd meg azt a helyet, ahová a kiírást el kell helyezni.
Console.WriteLine("5. feladat, a 4-es eredeti megoldása alapján");
string[] titkos2 = new string[20];
i = 0;
while (i < 20)
{
titkos2[i] = Convert.ToString(rnd.Next(0, 10));
Console.WriteLine(titkos2[i]);
j = 0;
Console.WriteLine(titkos2[i]);
while (j < 9)
{
titkos2[i] = titkos2[i] + Convert.ToString(rnd.Next(0, 10));
j++;
Console.WriteLine(titkos2[i]);
}
i++;
}
Console.ReadLine();
//6. feladat:
// Az órai munka minden feladatát futtasd lépésenként, vizsgáld a műveleteket, változókat.
Console.WriteLine("6. feladat");
//7. feladat:
// Ismételd meg tízszer a Beep() metódus segítségével
//a Morse SOS (. . . – – – . . .) jelet
//(a harmadik leckében találsz hozzá segítséget).
//A külső ciklus 10-szer fusson, ezen belül fusson
//3 belső ciklus.
//Az első ismételje 3-szor a rövid hangot;
//a második ismételje 3-szor a hosszú hangot,
//a harmadik ugyanaz, mint az első.
//Módosítás: ne hangot adjon a program, hanem
//írja ki a jeleket.
Console.WriteLine("7. feladat");
i = 0;
int K = 0;
while (i < 10)
{
K = 0;
while (K < 3)
{
Console.Write(".");
K++;
}
j = 0;
while (j < 3)
{
Console.Write("-");
j++;
}
K = 0;
while (K < 3)
{
Console.Write(".");
K++;
}
i++;
}
//8. feladat:
//– Hangokkal kódold le a végén a TITANIC szót (ehhez ne használj ciklust)
Console.WriteLine("8. feladat");
Console.ReadLine();
}
}
}
További feladat: Írjuk tele a képernyőt (soronként, azon belül oszloponként) egyesével valamilyen karakterrel.