Untitled
unknown
plain_text
2 years ago
4.2 kB
11
Indexable
using System;
using System.Linq;
class Program
{
static bool SprawdzImie(string imie)
{
// Sprawdzenie długości imienia
if (imie.Length < 2 || imie.Length > 13)
return false;
// Sprawdzenie czy pierwsza litera jest wielka
if (!char.IsUpper(imie[0]))
return false;
// Sprawdzenie czy wszystkie pozostałe litery są małe
if (imie.Skip(1).Any(c => char.IsUpper(c)))
return false;
// Sprawdzenie czy imię nie zawiera cyfr
if (imie.Any(char.IsDigit))
return false;
return true;
}
static bool SprawdzNazwisko(string nazwisko)
{
// Sprawdzenie długości nazwiska
if (nazwisko.Length < 2 || nazwisko.Length > 20)
return false;
// Podział nazwiska na człony (jeśli występuje)
string[] czlonyNazwiska = nazwisko.Split('-');
// Sprawdzenie każdego członu nazwiska
foreach (string czlon in czlonyNazwiska)
{
// Sprawdzenie czy pierwsza litera jest wielka
if (!char.IsUpper(czlon[0]))
return false;
// Sprawdzenie czy wszystkie pozostałe litery są małe
if (czlon.Skip(1).Any(c => char.IsUpper(c)))
return false;
// Sprawdzenie czy człon nazwiska nie zawiera cyfr
if (czlon.Any(char.IsDigit))
return false;
}
return true;
}
static bool SprawdzNumerTelefonu(string numer)
{
// Sprawdzenie długości numeru
// Sprawdzenie czy numer zawiera tylko cyfry
if (!numer.All(char.IsDigit) && !numer.StartsWith("+"))
return false;
// Sprawdzenie, czy numer zaczyna się od "+"
if (numer.StartsWith("+"))
{
// Dla numeru zaczynającego się od "+", sprawdzenie długości
if (numer.Length < 11 || numer.Length > 13)
return false;
}
else
{
// Dla numeru bez "+", sprawdzenie czy ma dokładnie 9 cyfr
if (numer.Length != 9)
return false;
}
return true;
}
static void Main(string[] args)
{
// Przykłady użycia
/*Console.WriteLine(SprawdzImie("Jan")); // True
Console.WriteLine(SprawdzImie("jan")); // False (pierwsza litera nie jest wielka)
Console.WriteLine(SprawdzImie("Jan1")); // False (cyfra w imieniu)
Console.WriteLine(SprawdzImie("JanKowalski")); // False (imię złożone z więcej niż 13 liter)
*/
Console.WriteLine(SprawdzNazwisko("Kowalski")); // True
Console.WriteLine(SprawdzNazwisko("Nowak-Jastrzębski"));// True
Console.WriteLine(SprawdzNazwisko("Nowak-jastrzębski"));
Console.WriteLine(SprawdzNazwisko("janowski")); // False (pierwsza litera nie jest wielka)
Console.WriteLine(SprawdzNazwisko("Jan1")); // False (cyfra w nazwisku)
Console.WriteLine(SprawdzNazwisko("Nowak-123")); // False (cyfra w nazwisku)
Console.WriteLine(SprawdzNazwisko("D")); // False (nazwisko zbyt krótkie)
Console.WriteLine(SprawdzNazwisko("DługopolskiTomaszewskiNowak")); // False (nazwisko zbyt długie)
Console.WriteLine("Numery");
Console.WriteLine(SprawdzNumerTelefonu("+123456789")); // false
Console.WriteLine(SprawdzNumerTelefonu("123456789")); // True
Console.WriteLine(SprawdzNumerTelefonu("+48123456789")); // True
Console.WriteLine(SprawdzNumerTelefonu("+481234567891")); // True
Console.WriteLine(SprawdzNumerTelefonu("+481234567891"));// coś
Console.WriteLine(SprawdzNumerTelefonu("+48")); // False (zbyt krótki numer)
Console.WriteLine(SprawdzNumerTelefonu("abc123456")); // False (litera w numerze)
Console.WriteLine(SprawdzNumerTelefonu("1234567890a")); // False (litera w numerze)
Console.ReadKey();
}
}
Editor is loading...
Leave a Comment