Ohjelmointi 1, tentti 12.6.2020, arvosteluperusteet
Yleistä
Tentti (PDF) oli pistekeskiarvon 11.8 perusteella hieman keskimääräistä vaikeampi.
Opiskelijan omat tehtävät on nähtävissä TIMissä.
Tehtävä | Teki (opiskelijaa, kpl) | Keskiarvo | Keskihajonta | Tarkastaja |
---|---|---|---|---|
Tehtävä 1 | 7 | 2.9 | Antti-Jussi Lakanen | |
Tehtävä 2 | 7 | 3.4 | Antti-Jussi Lakanen | |
Tehtävä 3 | 7 | 3.4 | Antti-Jussi Lakanen | |
Tehtävä 4 | 7 | 2.1 | Antti-Jussi Lakanen | |
Yhteensä | 48 | 11.8 |
Arvosana-asteikko:
Tehtävä 1
Malliratkaisu: 1A, 2C, 3C, 4B, 5C, 6B
Tehtävä 2
Malliratkaisu: 1D, 2D, 3D, 4D, 5D, 6A
Tehtävä 3
Malliratkaisu
using System;
using System.Text;
using System.Linq;
using System.Collections.Generic;
/// @author Antti-Jussi Lakanen
/// @version 12.6.2020
///
/// <summary>
/// Tehtävä 3, Palindromi.
/// </summary>
public class T3_Palindromi
{
/// <summary>
/// Tulostaa kaksi esimerkkiä HassuSana-funktion käyttämiseksi.
/// </summary>
public static void Main()
{
Console.WriteLine(HassuSana("saippuakauppias"));
Console.WriteLine(HassuSana("SaippuaS"));
}
/// <summary>
/// Onko annettu merkkijono sama luettiinpa
/// se etu- tai takaperin (palindromi).
/// </summary>
/// <param name="jono">Tutkittava jono.</param>
/// <returns>Onko jono palindromi.</returns>
/// <example>
/// <pre name="test">
/// HassuSana("Saippua") === false;
/// HassuSana("SaippuaS") === false;
/// HassuSana("saippuakauppias") === true;
/// HassuSana("Saippuakauppias") === true;
/// HassuSana("") === false;
/// HassuSana("S") === true;
/// </pre>
/// </example>
public static bool HassuSana(string jono)
{
if (jono.Length < 1) return false;
for (int i = 0, j = jono.Length - 1; i < j; i++, j--)
{
if (Char.ToLower(jono[i]) != Char.ToLower(jono[j]))
return false;
}
return true;
}
}
Tehtävä 4
Malliratkaisu
using System;
using System.Text;
using System.Linq;
using System.Collections.Generic;
using System.Runtime.InteropServices;
/// @author Antti-Jussi Lakanen
/// @version 12.6.2020
/// <summary>
/// Tehtävä 4, merkkijonojen pituuksien keskiarvo.
/// </summary>
public class T4_Keskiarvo
{
/// <summary>
/// Esimerkki PituuksienKeskiarvo-funktion käyttämisestä.
/// Funktion palauttama tulos tulostetaan ruudulle.
/// </summary>
public static void Main()
{
List<String> hedelmat = new List<String> { "Mango", "Omena", "Mandariini", "Kiiwi", "Persikka", "Hunajameloni" };
Console.WriteLine(PituuksienKeskiarvo(hedelmat));
}
/// <summary>
/// Antaa merkkijonojen pituuksien keskiarvon.
/// </summary>
/// <param name="jonot">Merkkijonot</param>
/// <returns>Pituuksien keskiarvo.</returns>
/// <example>
/// <pre name="test">
/// PituuksienKeskiarvo(new List<string>{ "Omena" }) === 5;
/// </pre>
/// </example>
public static double PituuksienKeskiarvo(List<string> jonot)
{
double pituuksienSumma = 0;
for (int i = 0; i < jonot.Count; i++)
{
string jono = jonot[i];
pituuksienSumma = pituuksienSumma + jono.Length;
}
return pituuksienSumma / jonot.Count;
}
}
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.