Skip to content
Snippets Groups Projects
Commit 1f2afdb5 authored by Vesa Lappalainen's avatar Vesa Lappalainen :bicyclist:
Browse files

live12

parent 05290349
No related branches found
No related tags found
No related merge requests found
using System;
/// @author Vesa Lappalainen
/// @version 12.10.2012
/// <summary>
/// Esimerkkjä aliohjelmien kutsumisesta
/// </summary>
public class Kutsuminen
{
/// <summary>
/// Kutsutaan aliohjelmia
/// </summary>
/// <param name="args">ei käytössä</param>
public static void Main(string[] args)
{
int a = 4, b = 5;
int iso;
iso = Suurempi(a, b);
Console.WriteLine(iso);
iso = Suurempi(iso + 1, 7 / 3 + 5 / 2);
Console.WriteLine(iso);
int[] luvut = new int[4];
int[] m = luvut;
luvut[2] = 4;
luvut[1] = 6;
m[3] = iso + 3;
VaihdaSuurin(luvut, 5);
Console.WriteLine(String.Join(" ", luvut));
}
/// <summary>
/// Palautetaan kahdesta luvusta suurempi
/// </summary>
/// <param name="luku1">eka luku</param>
/// <param name="luku2">toinen luku</param>
/// <returns>suurempi luvuista</returns>
/// <example>
/// <pre name="test">
/// Kutsuminen.Suurempi(3,4) === 4;
/// Kutsuminen.Suurempi(-3,4) === 4;
/// Kutsuminen.Suurempi(-3,-4) === -3;
/// Kutsuminen.Suurempi(2,2) === 2;
/// </pre>
/// </example>
public static int Suurempi(int luku1, int luku2)
{
if (luku1 >= luku2) return luku1;
return luku2;
}
/// <summary>
/// Vaihdetaan taulukon suurin alkio halutuksi.
/// </summary>
/// <param name="t">taulukko josta suurinta etsitään ja missä suurin vaihdetaan</param>
/// <param name="korvaavaArvo">suurimman alkion uusi arvo</param>
/// <example>
/// <pre name="test">
/// int[] luvut = {2,5,4,3};
/// VaihdaSuurin(luvut,1);
/// String.Join(" ",luvut) === "2 1 4 3";
/// VaihdaSuurin(luvut,1);
/// String.Join(" ",luvut) === "2 1 1 3";
/// VaihdaSuurin(luvut,9);
/// String.Join(" ",luvut) === "2 1 1 9";
/// VaihdaSuurin(luvut,1);
/// String.Join(" ",luvut) === "2 1 1 1";
/// VaihdaSuurin(luvut,-1);
/// String.Join(" ",luvut) === "-1 1 1 1";
/// luvut = new int[]{5};
/// VaihdaSuurin(luvut,2);
/// String.Join(" ",luvut) === "2";
/// luvut = new int[0];
/// VaihdaSuurin(luvut,2);
/// String.Join(" ",luvut) === "";
/// </pre>
/// </example>
public static void VaihdaSuurin(int[] t, int korvaavaArvo)
{
int paikka = -1;
int suurin = int.MinValue;
for (int i = 0; i < t.Length; i++)
{
int luku = t[i];
if (luku > suurin)
{
suurin = luku;
paikka = i;
}
}
if (paikka < 0) return;
t[paikka] = korvaavaArvo;
}
}
\ No newline at end of file
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ExternalConsole>true</ExternalConsole>
</PropertyGroup>
</Project>
using System;
using System.Text;
/// @author Vesa Lappalainen
/// @version 10.10.2011
///
/// <summary>
/// Esimerkkejä matriisista
/// </summary>
public class Matriisit
{
/// <summary>
/// Esimerkkejä matriiseista
/// </summary>
/// <param name="args">ei käytössä</param>
public static void Main(string[] args)
{
// int[] luvut = int[3];
int[] luvut = { 3, 5, 1, 9 };
int[,] matriisi1 = new int[23, 5];
int[,] matriisi = {
{1,2,3},
{4,5,6},
{7,8,9},
{10,11,12}
};
Tulosta(matriisi);
Console.WriteLine("Dimensio: " + matriisi.Rank);
Console.WriteLine("Rivejä: " + matriisi.GetLength(0));
Console.WriteLine("Sarakkeita: " + matriisi.GetLength(1));
Console.WriteLine("Paikassa 2,1: " + matriisi[2, 1]);
// int rivi = MiltaRiviltaLoytyy(matriisi, 8);
matriisi1[6, 2] = 99;
// Tulosta(matriisi1);
}
// TÄYDENNÄ
}
\ No newline at end of file
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ExternalConsole>true</ExternalConsole>
</PropertyGroup>
</Project>

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.3.32901.215
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kutsuminen", "Kutsuminen\Kutsuminen.csproj", "{EAC48213-1056-4258-B712-32EDF42EF646}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Matriisit", "Matriisit\Matriisit.csproj", "{95562FEE-F613-4DD3-9017-C596D6BA57F5}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{EAC48213-1056-4258-B712-32EDF42EF646}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EAC48213-1056-4258-B712-32EDF42EF646}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EAC48213-1056-4258-B712-32EDF42EF646}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EAC48213-1056-4258-B712-32EDF42EF646}.Release|Any CPU.Build.0 = Release|Any CPU
{95562FEE-F613-4DD3-9017-C596D6BA57F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{95562FEE-F613-4DD3-9017-C596D6BA57F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{95562FEE-F613-4DD3-9017-C596D6BA57F5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{95562FEE-F613-4DD3-9017-C596D6BA57F5}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {8EAD759D-2A0A-46FF-B2DA-FFBB19AD3691}
EndGlobalSection
EndGlobal
using System;
using System.Linq;
/// @author Vesa Lappalainen
/// @version 12.10.2012
......@@ -14,19 +13,46 @@ public class Kutsuminen
/// <param name="args">ei käytössä</param>
public static void Main(string[] args)
{
int a = 4, b = 5;
int iso;
int[,] array2D = { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };
Console.WriteLine(String.Join(" ", array2D.Cast<int>()));
iso = Suurempi(a, b);
Console.WriteLine(iso);
int[] luvut = { 4, 9, 6, 2, 5 };
iso = Suurempi(iso + 1, 7 / 3 + 5 / 2);
Console.WriteLine(iso);
int[] luvut = new int[4];
int[] m = luvut;
luvut[2] = 4;
luvut[1] = 6;
m[3] = iso + 3;
VaihdaSuurin(luvut, 5);
Console.WriteLine(String.Join(" ", luvut));
}
int paikka = EtsiPaikka(luvut, 6);
Console.WriteLine("Löytyi paikasta: {0}", paikka);
/// <summary>
/// Palautetaan kahdesta luvusta suurempi
/// </summary>
/// <param name="luku1">eka luku</param>
/// <param name="luku2">toinen luku</param>
/// <returns>suurempi luvuista</returns>
/// <example>
/// <pre name="test">
/// Kutsuminen.Suurempi(3,4) === 4;
/// Kutsuminen.Suurempi(-3,4) === 4;
/// Kutsuminen.Suurempi(-3,-4) === -3;
/// Kutsuminen.Suurempi(2,2) === 2;
/// </pre>
/// </example>
public static int Suurempi(int luku1, int luku2)
{
if (luku1 >= luku2) return luku1;
return luku2;
}
......@@ -57,29 +83,6 @@ public class Kutsuminen
/// </pre>
/// </example>
public static void VaihdaSuurin(int[] t, int korvaavaArvo)
{
int paikka = SuurimanPaikka(t);
if (paikka < 0) return;
t[paikka] = korvaavaArvo;
}
/// <summary>
/// Etsii taulukon suurimman luvun paikan. Mikäli monta
/// yhtäsuurta, palautetaan ensimmäisen paikka. Mikäli
/// suurinta ei löydy (tyhjä taulukko), palautetaan -1
/// </summary>
/// <param name="t">tutkittava taulukko</param>
/// <returns>suurimman alkion paikan indeksi tai -1</returns>
/// <example>
/// <pre name="test">
/// SuurimanPaikka(new int[]{1,2,5,3}) === 2;
/// SuurimanPaikka(new int[]{7,2,5,3}) === 0;
/// SuurimanPaikka(new int[]{1,2,5,8}) === 3;
/// SuurimanPaikka(new int[]{}) === -1;
/// </pre>
/// </example>
public static int SuurimanPaikka(int[] t)
{
int paikka = -1;
int suurin = int.MinValue;
......@@ -92,33 +95,9 @@ public class Kutsuminen
paikka = i;
}
}
return paikka;
}
/// <summary>
/// Etsii taulukosta luvun paikan. Mikäli monta samaa, palautetaan 1. paikka.
/// Mikäli ei löydy, palautetaan -1
/// </summary>
/// <param name="t">tutkittava taulukko</param>
/// <param name="luku">etsittävä luku</param>
/// <returns>luvun indeksi taulukossa tai -1</returns>
/// <example>
/// <pre name="test">
/// EtsiPaikka(new int[]{1,2,5,3}, 5) === 2;
/// EtsiPaikka(new int[]{7,2,5,3}, 7) === 0;
/// EtsiPaikka(new int[]{1,2,5,8}, 8) === 3;
/// EtsiPaikka(new int[]{1,2,2,8}, 2) === 1;
/// EtsiPaikka(new int[]{1,2,2,8}, 3) === -1;
/// EtsiPaikka(new int[]{}, 4) === -1;
/// </pre>
/// </example>
public static int EtsiPaikka(int[] t, int luku)
{
for (int i = 0; i < t.Length; i++)
{
if (t[i] == luku) return i;
}
return -1;
if (paikka < 0) return;
t[paikka] = korvaavaArvo;
}
}
}
\ No newline at end of file
using System;
using System.Linq;
/// @author Vesa Lappalainen
/// @version 12.10.2012
/// <summary>
/// Esimerkkjä aliohjelmien kutsumisesta, muokattu versio Kutsuminen.cs
/// </summary>
public class Kutsuminen2
{
/// <summary>
/// Kutsutaan aliohjelmia
/// </summary>
/// <param name="args">ei käytössä</param>
public static void Main(string[] args)
{
int[,] array2D = { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };
Console.WriteLine(String.Join(" ", array2D.Cast<int>()));
int[] luvut = { 4, 9, 6, 2, 5 };
VaihdaSuurin(luvut, 5);
Console.WriteLine(String.Join(" ", luvut));
int paikka = EtsiPaikka(luvut, 6);
Console.WriteLine("Löytyi paikasta: {0}", paikka);
}
/// <summary>
/// Vaihdetaan taulukon suurin alkio halutuksi.
/// </summary>
/// <param name="t">taulukko josta suurinta etsitään ja missä suurin vaihdetaan</param>
/// <param name="korvaavaArvo">suurimman alkion uusi arvo</param>
/// <example>
/// <pre name="test">
/// int[] luvut = {2,5,4,3};
/// VaihdaSuurin(luvut,1);
/// String.Join(" ",luvut) === "2 1 4 3";
/// VaihdaSuurin(luvut,1);
/// String.Join(" ",luvut) === "2 1 1 3";
/// VaihdaSuurin(luvut,9);
/// String.Join(" ",luvut) === "2 1 1 9";
/// VaihdaSuurin(luvut,1);
/// String.Join(" ",luvut) === "2 1 1 1";
/// VaihdaSuurin(luvut,-1);
/// String.Join(" ",luvut) === "-1 1 1 1";
/// luvut = new int[]{5};
/// VaihdaSuurin(luvut,2);
/// String.Join(" ",luvut) === "2";
/// luvut = new int[0];
/// VaihdaSuurin(luvut,2);
/// String.Join(" ",luvut) === "";
/// </pre>
/// </example>
public static void VaihdaSuurin(int[] t, int korvaavaArvo)
{
int paikka = SuurimanPaikka(t);
if (paikka < 0) return;
t[paikka] = korvaavaArvo;
}
/// <summary>
/// Etsii taulukon suurimman luvun paikan. Mikäli monta
/// yhtäsuurta, palautetaan ensimmäisen paikka. Mikäli
/// suurinta ei löydy (tyhjä taulukko), palautetaan -1
/// </summary>
/// <param name="t">tutkittava taulukko</param>
/// <returns>suurimman alkion paikan indeksi tai -1</returns>
/// <example>
/// <pre name="test">
/// SuurimanPaikka(new int[]{1,2,5,3}) === 2;
/// SuurimanPaikka(new int[]{7,2,5,3}) === 0;
/// SuurimanPaikka(new int[]{1,2,5,8}) === 3;
/// SuurimanPaikka(new int[]{}) === -1;
/// </pre>
/// </example>
public static int SuurimanPaikka(int[] t)
{
int paikka = -1;
int suurin = int.MinValue;
for (int i = 0; i < t.Length; i++)
{
int luku = t[i];
if (luku > suurin)
{
suurin = luku;
paikka = i;
}
}
return paikka;
}
/// <summary>
/// Etsii taulukosta luvun paikan. Mikäli monta samaa, palautetaan 1. paikka.
/// Mikäli ei löydy, palautetaan -1
/// </summary>
/// <param name="t">tutkittava taulukko</param>
/// <param name="luku">etsittävä luku</param>
/// <returns>luvun indeksi taulukossa tai -1</returns>
/// <example>
/// <pre name="test">
/// EtsiPaikka(new int[]{1,2,5,3}, 5) === 2;
/// EtsiPaikka(new int[]{7,2,5,3}, 7) === 0;
/// EtsiPaikka(new int[]{1,2,5,8}, 8) === 3;
/// EtsiPaikka(new int[]{1,2,2,8}, 2) === 1;
/// EtsiPaikka(new int[]{1,2,2,8}, 3) === -1;
/// EtsiPaikka(new int[]{}, 4) === -1;
/// </pre>
/// </example>
public static int EtsiPaikka(int[] t, int luku)
{
for (int i = 0; i < t.Length; i++)
{
if (t[i] == luku) return i;
}
return -1;
}
}
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<ExternalConsole>true</ExternalConsole>
</PropertyGroup>
</Project>
......@@ -13,6 +13,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "matriisit", "Matriisit\matr
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SuurinJaPienin", "SuurinJaPienin\SuurinJaPienin.csproj", "{CC993DD8-E485-48B7-AEE6-101B2CC44271}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kutsuminen2", "Kutsuminen2\Kutsuminen2.csproj", "{B0C85F9C-2D42-47DB-B897-544B2EE52EAE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
......@@ -39,6 +41,10 @@ Global
{CC993DD8-E485-48B7-AEE6-101B2CC44271}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CC993DD8-E485-48B7-AEE6-101B2CC44271}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CC993DD8-E485-48B7-AEE6-101B2CC44271}.Release|Any CPU.Build.0 = Release|Any CPU
{B0C85F9C-2D42-47DB-B897-544B2EE52EAE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B0C85F9C-2D42-47DB-B897-544B2EE52EAE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B0C85F9C-2D42-47DB-B897-544B2EE52EAE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B0C85F9C-2D42-47DB-B897-544B2EE52EAE}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment