Skip to content
Snippets Groups Projects
Commit 0757a83b authored by Vesa Lappalainen's avatar Vesa Lappalainen :bicyclist:
Browse files
parents 673a6f34 5ca33a6e
No related branches found
No related tags found
No related merge requests found
Showing
with 263 additions and 20 deletions
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/modules.xml
/contentModel.xml
/.idea.live11.iml
/projectSettingsUpdater.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with BOM under Windows, with no BOM otherwise" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
</component>
</project>
\ No newline at end of file
using System;
using System.Text;
/// @author Vesa Lappalainen
/// @version 30.09.2011
///
/// <summary>
/// Tutkitaan olioviitteiden käyttöä ja käyttäytymistä.
/// </summary>
public class Olioviitteet
{
/// <summary>
/// Alustetaan muuttujia ja tulostetaan.
/// Testaillaan olioiden ja alkeismuuttujien eroja.
/// </summary>
public static void Main()
{
StringBuilder s1 = new StringBuilder("eka");
StringBuilder s2 = new StringBuilder("eka");
Console.WriteLine(s1 == s2); // false
Console.WriteLine(s1.Equals(s2)); // true
Console.WriteLine(s1.Equals("eka")); // true
Console.WriteLine(s1.ToString().Equals("eka")); // true
int i1 = 11;
int i2 = 10 + 1;
Console.WriteLine(i1 == i2); // true
int[] it1 = new int[]{3};
int[] it2 = { 3 };
Console.WriteLine(it1 == it2); // false
Console.WriteLine(it1.Equals(it2)); // false
Console.WriteLine(it1[0] == it2[0]); // true
s2 = s1;
Console.WriteLine(s1 == s2); // true
// ==========================================================
string st1 = "eka";
string st2 = s1.ToString();
Console.WriteLine(Object.ReferenceEquals(st1, st2)); // false
Console.WriteLine(st1 == st2); // true
Console.WriteLine(st1.Equals(st2)); // true
Console.WriteLine(object.ReferenceEquals(st1, st2)); // false
st2 = null;
Console.WriteLine(st2 == null); // true
Console.WriteLine(object.ReferenceEquals(st1, st2)); // false
st1 = null;
Console.WriteLine(object.ReferenceEquals(st1, st2)); // true
}
}
\ No newline at end of file
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<ExternalConsole>true</ExternalConsole>
</PropertyGroup>
</Project>

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Olioviitteet", "Olioviitteet\Olioviitteet.csproj", "{58B3B602-33E5-470A-B67B-30A99D6A88D1}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{58B3B602-33E5-470A-B67B-30A99D6A88D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{58B3B602-33E5-470A-B67B-30A99D6A88D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{58B3B602-33E5-470A-B67B-30A99D6A88D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{58B3B602-33E5-470A-B67B-30A99D6A88D1}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal
......@@ -18,7 +18,7 @@ public class StringVsStringBuilder
public static void Main(string[] args)
{
// Yhdistellään merkkijonoja StringBuilder-olion avulla
const int MONTAKO = 50000; // Montako kertaa merkkijonoja yhdistellään
const int MONTAKO = 2*50000; // Montako kertaa merkkijonoja yhdistellään
Stopwatch sw = Stopwatch.StartNew();
StringBuilder sb = new StringBuilder("a");
for (int i = 0; i < MONTAKO; i++)
......@@ -69,5 +69,13 @@ public class StringVsStringBuilder
// Pituus 588891
// True
// Tulostus 2023, AMD Ryzen 9 5900X 12-Core Processor 3.70 GHz
// StringBuilder 0.004 s
// Pituus 588891
// SB Insert 10.201 s
// Pituus 588891
// String 8.836 s
// Pituus 588891
// True
}
}
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/.idea.luento11.iml
/modules.xml
/contentModel.xml
/projectSettingsUpdater.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with BOM under Windows, with no BOM otherwise" />
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
</component>
</project>
\ No newline at end of file
using System;
using Jypeli;
/// @author Vesa Lappalainen
......@@ -11,10 +10,10 @@ using Jypeli;
/// </summary>
public class KentanMuokkaus : PhysicsGame
{
private PhysicsObject pelaaja; // Liikuteltava pallo, jota pystytään
// liikuttamaan kaikista tämän luokan aliohjelmista
const int KOKO = 20; // paljonko on yksittäisen palikan koko.
// huom const eli vakio! (ei voi muuttaa)
private PhysicsObject pelaaja; // Liikuteltava pallo, jota pystytään
// liikuttamaan kaikista tämän luokan aliohjelmista
private const double KOKO = 20; // paljonko on yksittäisen palikan koko.
// huom const eli vakio! (ei voi muuttaa)
/// <summary>
/// Asetetaan painovoima ja kutsutaan alustuksiin
......
using System;
using System;
/// @author Vesa Lappalainen
/// @version 12.10.2012
......@@ -65,7 +65,7 @@ public class Kutsuminen
/// <pre name="test">
/// int[] luvut = {2,5,4,3};
/// VaihdaSuurin(luvut,1);
/// String.Join(" ",luvut) === "2 1 4 3";
/// luvut =J= "2, 1, 4, 3";
/// VaihdaSuurin(luvut,1);
/// String.Join(" ",luvut) === "2 1 1 3";
/// VaihdaSuurin(luvut,9);
......
using System;
using NUnit.Framework;
using static Kutsuminen;
[TestFixture]
[DefaultFloatingPointTolerance(0.000001)]
public class TestKutsuminen
{
[Test]
public void TestSuurempi45()
{
Assert.AreEqual( 4, Suurempi(3,4) , "in method Suurempi, line 46");
Assert.AreEqual( 4, Suurempi(-3,4) , "in method Suurempi, line 47");
Assert.AreEqual( -3, Suurempi(-3,-4) , "in method Suurempi, line 48");
Assert.AreEqual( 2, Suurempi(2,2) , "in method Suurempi, line 49");
}
[Test]
public void TestVaihdaSuurin65()
{
int[] luvut = {2,5,4,3};
VaihdaSuurin(luvut,1);
Assert.AreEqual(( "2, 1, 4, 3").ToString(), String.Join(", ", luvut ), "in method VaihdaSuurin, line 68");
VaihdaSuurin(luvut,1);
Assert.AreEqual( "2 1 1 3", String.Join(" ",luvut) , "in method VaihdaSuurin, line 70");
VaihdaSuurin(luvut,9);
Assert.AreEqual( "2 1 1 9", String.Join(" ",luvut) , "in method VaihdaSuurin, line 72");
VaihdaSuurin(luvut,1);
Assert.AreEqual( "2 1 1 1", String.Join(" ",luvut) , "in method VaihdaSuurin, line 74");
VaihdaSuurin(luvut,-1);
Assert.AreEqual( "-1 1 1 1", String.Join(" ",luvut) , "in method VaihdaSuurin, line 76");
luvut = new int[]{5};
VaihdaSuurin(luvut,2);
Assert.AreEqual( "2", String.Join(" ",luvut) , "in method VaihdaSuurin, line 79");
luvut = new int[0];
VaihdaSuurin(luvut,2);
Assert.AreEqual( "", String.Join(" ",luvut) , "in method VaihdaSuurin, line 82");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NUnit" Version="3.13.1"/>
<PackageReference Include="NUnit3TestAdapter" Version="3.17.0"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3"/>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Kutsuminen\Kutsuminen.csproj"/>
</ItemGroup>
</Project>
#define SIMPPELI
using System;
using System.Collections.Generic;
using Jypeli;
using Jypeli.Assets;
using Jypeli.Controls;
using Jypeli.Effects;
using Jypeli.Widgets;
/// @author vesal
/// @version 16.10.2018
......
using NUnit.Framework;
using static Matriisit;
[TestFixture]
[DefaultFloatingPointTolerance(0.000001)]
public class TestMatriisit
{
[Test]
public void TestMiltaRiviltaLoytyy69()
{
int[,] m = {{2,4,1},{9,2,0},{5,6,1},{0,12,3}};
Assert.AreEqual( 0, MiltaRiviltaLoytyy(m,1) , "in method MiltaRiviltaLoytyy, line 71");
Assert.AreEqual( 1, MiltaRiviltaLoytyy(m,0) , "in method MiltaRiviltaLoytyy, line 72");
Assert.AreEqual( 3, MiltaRiviltaLoytyy(m,12) , "in method MiltaRiviltaLoytyy, line 73");
Assert.AreEqual( -1, MiltaRiviltaLoytyy(m,11) , "in method MiltaRiviltaLoytyy, line 74");
}
[Test]
public void TestSumma101()
{
int[,] m = {{2,4,1},{9,2,0},{5,6,1},{0,12,3}};
Assert.AreEqual( 45, Summa(m) , "in method Summa, line 103");
Assert.AreEqual( 10, Summa(new int[,]{{1,2},{3,4}}) , "in method Summa, line 104");
Assert.AreEqual( 3, Summa(new int[,]{{1,2}}) , "in method Summa, line 105");
Assert.AreEqual( 6, Summa(new int[,]{{2},{4}}) , "in method Summa, line 106");
Assert.AreEqual( 9, Summa(new int[,]{{9}}) , "in method Summa, line 107");
Assert.AreEqual( 0, Summa(new int[,]{{}}) , "in method Summa, line 108");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="NUnit" Version="3.13.1"/>
<PackageReference Include="NUnit3TestAdapter" Version="3.17.0"/>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3"/>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Matriisit\Matriisit.csproj"/>
</ItemGroup>
</Project>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
/// @author Vesa Lappalainen
......@@ -43,17 +41,18 @@ public class Olioviitteet
// ==========================================================
String st1 = "eka";
String st2 = s1.ToString();
string st1 = "eka";
string st2 = s1.ToString();
Console.WriteLine(Object.ReferenceEquals(st1, st2)); // false
Console.WriteLine(st1 == st2); // true
Console.WriteLine(st1.Equals(st2)); // true
Console.WriteLine(object.ReferenceEquals(st1, st2)); // false
st2 = null;
Console.WriteLine(st2 == null); // true
Console.WriteLine(Object.ReferenceEquals(st1, st2)); // false
Console.WriteLine(object.ReferenceEquals(st1, st2)); // false
st1 = null;
Console.WriteLine(Object.ReferenceEquals(st1, st2)); // true
Console.WriteLine(object.ReferenceEquals(st1, st2)); // true
}
}
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