Commit dc0fa9b4 authored by Uwe Wienkop's avatar Uwe Wienkop

11.11.19 Mo

parent bee2b19e
......@@ -5,6 +5,7 @@ namespace _05CodeDojo
class Program
{
// Funktion Max, die das Maximum zweier übergebener int-Zahlen zurückliefert
#region Code
static int Max(int a, int b)
{
//if (a > b)
......@@ -14,20 +15,50 @@ namespace _05CodeDojo
return a > b ? a : b;
}
#endregion
// Funktion Swap, welche die Werte zweier übergebener int-Variablen vertauscht
#region Code
static void Swap(ref int a, ref int b) { }
#endregion
// Funktion Max1, die das Maximum der Werte eines Feldes bestimmt und zurückliefert
#region Code
static int Max1(int[] f) { }
#endregion
// Funktion Max2, die das Maximum eines int-Feldes bestimmt und
// das Maximum und die Stelle zurückliefert, wo das Maximum auftrat
#region Code
static void Max2(int[] f, out int max, out int maxInd) { }
static int Max2(int[] f, out int maxInd) { }
#endregion
// Funktion Union, erhält zwei Felder und liefert ein Feld zurück, welches
// die Werte beider Felder enthält
#region Code
static void Union(int[] f1, int[] f2, out int[] ergFeld) { }
static int[] Union(int[] f1, int[] f2) { }
static int[] Union(int[] f1, int[] f2)
{
int[] neu = new int[f1.Length + f2.Length];
int neuInd;
for (int i = 0; i < f1.Length; i++)
{
neu[i] = f1[i];
}
neuInd = f1.Length;
for (int i = 0; i < f2.Length; i++)
{
neu[f1.Length+i] = f2[i];
// neu[neuInd++] = f2[i];
// var++ ~ verwende den alten Wert der Variable und erhöhe
// ihn dann um 1
// ++var ~ erhöhe erst den Wert der Variablen und verwende
// den neuen Wert
// neuInd++;
}
return neu;
}
#endregion
// Funktion Even, erhält ein Feld und löscht aus dem Feld alle ungeraden Zahlen
#region Code
static int[] Even(int[] f) { }
static void Even(ref int[] f)
{
......@@ -40,6 +71,7 @@ namespace _05CodeDojo
int[] fNeu = new int[anz];
// ...
}
#endregion
static void Main(string[] args)
{
int[] f = { 1, 2, 3 };
......
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<RootNamespace>_06CodeDojo</RootNamespace>
</PropertyGroup>
</Project>
using System;
namespace _06CodeDojo
{
class Program
{
static void FeldAusgeben(int[,] f)
{
for (int z = 0; z < f.GetLength(0); z++)
{
for (int s = 0; s < f.GetLength(1); s++)
{
Console.Write($"{f[z, s]} ");
}
Console.WriteLine();
}
}
static void FeldInitialisieren(int[,] f, int wert)
{
for (int z = 0; z < f.GetLength(0); z++)
{
for (int s = 0; s < f.GetLength(1); s++)
{
f[z, s] = wert;
}
}
}
static void FeldSchachbrett(int[,] f)
{
int zaehler;
for (int z = 0; z < f.GetLength(0); z++)
{
zaehler = z % 2;
for (int s = 0; s < f.GetLength(1); s++)
{
f[z, s] = zaehler;
zaehler = 1 - zaehler;
}
}
}
static void Main(string[] args)
{
int[] f = new int[10];
// 8x8 Feld erzeugen
int[,] f2 = new int[8,8];
// Ausgabefunktion (!) für das 8x8 Feld / beliebiges 2D-Feld
FeldAusgeben(f2);
// Initialisierungsfunktion, d.h. alle Feldwerte auf Parameterwert setzen
// Feld mit Rand umgeben (z.B. Wert=1 für den Rand) und ausgeben
// Schachbrettmuster 0/1 im Feld und ausgeben
FeldSchachbrett(f2);
FeldAusgeben(f2);
// Haupt- und Nebendiagonale setzen und ausgeben
// Beispielsatz auf Buchstabenhäufigkeiten untersuchen und TOP-10 ausgeben (Sortieren ist erlaubt)
}
}
}
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<RootNamespace>_06Felder2</RootNamespace>
</PropertyGroup>
</Project>
using System;
namespace _06Felder2
{
class Program
{
static void Main(string[] args)
{
int[] f = { 4, 9, 1, 2, 5, 3, 7, 6, 8 };
for (int k = 0; k < f.Length-1; k++)
{
int minInd = k;
for (int i = k+1; i < f.Length; i++)
{
if (f[i] < f[minInd])
minInd = i;
}
if (minInd != k)
{
int c = f[k];
f[k] = f[minInd];
f[minInd] = c;
}
for (int i = 0; i < f.Length; i++)
{
Console.Write($"{f[i]} ");
}
Console.WriteLine();
}
}
}
}
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<RootNamespace>_06FelderHistogramme</RootNamespace>
</PropertyGroup>
</Project>
using System;
namespace _06FelderHistogramme
{
class Program
{
static void Main(string[] args)
{
//Random wuerfel = new Random();
//int[] anzahlen = new int[6];
//for (int i = 0; i < 10000; i++)
//{
// int zahl = wuerfel.Next(1, 7) - 1;
// anzahlen[zahl] += 1;
//}
int[] werte = { 3, 4, 5, 1, 3, 2, 6, 5, 2, 9, 3, 2, 1 };
int[] anzahlen = new int[10];
for (int i = 0; i < werte.Length; i++)
{
//int zahl = werte[i];
//anzahlen[zahl] += 1;
anzahlen[werte[i]] += 1;
}
// 1. Maximum bestimmen
int max = werte[0];
for (int i = 1; i < anzahlen.Length; i++)
{
if (anzahlen[i] > max)
max = anzahlen[i];
}
for (int wasserstand = max; wasserstand >= 1; wasserstand--)
{
for (int i = 0; i < anzahlen.Length; i++)
{
if (anzahlen[i] >= wasserstand)
Console.Write("* ");
else
Console.Write(". ");
}
Console.WriteLine();
}
for (int i = 0; i < anzahlen.Length; i++)
{
Console.Write($"{i,2} -- {anzahlen[i]} ");
for (int j = 0; j < anzahlen[i]; j++)
Console.Write("*");
Console.WriteLine();
}
}
}
}
......@@ -43,7 +43,13 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "05FunktionenIntro3", "05Fun
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "05FunktionenIntro4", "05FunktionenIntro4\05FunktionenIntro4.csproj", "{A6379B1C-2DAD-4E95-87AC-B88169F5F37F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "05CodeDojo", "05CodeDojo\05CodeDojo.csproj", "{885A2A0A-CEAC-4140-9F18-FF4FCF1DCF77}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "05CodeDojo", "05CodeDojo\05CodeDojo.csproj", "{885A2A0A-CEAC-4140-9F18-FF4FCF1DCF77}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "06CodeDojo", "06CodeDojo\06CodeDojo.csproj", "{AFB15A60-585A-42BF-87C6-BD8D1C587427}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "06FelderSortieren", "06Felder2\06FelderSortieren.csproj", "{C70917DF-1D95-4532-9D85-79E9A57C20CF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "06FelderHistogramme", "06FelderHistogramme\06FelderHistogramme.csproj", "{0287FEC1-5015-4789-A33D-5A1B66B30E77}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
......@@ -135,6 +141,18 @@ Global
{885A2A0A-CEAC-4140-9F18-FF4FCF1DCF77}.Debug|Any CPU.Build.0 = Debug|Any CPU
{885A2A0A-CEAC-4140-9F18-FF4FCF1DCF77}.Release|Any CPU.ActiveCfg = Release|Any CPU
{885A2A0A-CEAC-4140-9F18-FF4FCF1DCF77}.Release|Any CPU.Build.0 = Release|Any CPU
{AFB15A60-585A-42BF-87C6-BD8D1C587427}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AFB15A60-585A-42BF-87C6-BD8D1C587427}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AFB15A60-585A-42BF-87C6-BD8D1C587427}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AFB15A60-585A-42BF-87C6-BD8D1C587427}.Release|Any CPU.Build.0 = Release|Any CPU
{C70917DF-1D95-4532-9D85-79E9A57C20CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C70917DF-1D95-4532-9D85-79E9A57C20CF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C70917DF-1D95-4532-9D85-79E9A57C20CF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C70917DF-1D95-4532-9D85-79E9A57C20CF}.Release|Any CPU.Build.0 = Release|Any CPU
{0287FEC1-5015-4789-A33D-5A1B66B30E77}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0287FEC1-5015-4789-A33D-5A1B66B30E77}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0287FEC1-5015-4789-A33D-5A1B66B30E77}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0287FEC1-5015-4789-A33D-5A1B66B30E77}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment