0% found this document useful (0 votes)
32 views18 pages

Jamshid

Uploaded by

abrorbalxiyev01
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views18 pages

Jamshid

Uploaded by

abrorbalxiyev01
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 18

Sinflar

Shaxsning familiyasi va ismi, tug’ilgan yili, jinsi, yashash manzili va telefon nomeri bo’yicha
ma’lumotlarni xotirada xotirada saqlash, qiymat o’qish va chop qilish amalini bajaruvchi
SHAXS sinfi yaratilsin. Uning vorisi qilib talabalar guruhini tavsivlovchi TALABA_GURUHI
sinfi yaratilsin. Unda qo’shimcha ravishda talabaning o’qiydigan guruh nomi, kursi haqida
ma’lumotlar bo’lishi, hamda ixtiyoriy sondagi talalbalar bilan ishlash, qandaydir alomati
boyocha talabani izlash (familiya, tug’ilgan yili yoki telefon nomeri bo’yicha), yangi yozuvni
qo’shish, o’chirish va tartiblash amallari bajarilsin.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;

namespace ConsoleApp7
{
class SHAXS
{
public string ism { get; set; }
public string familiya { get; set; }
public string tugilgan_yil { get; set; }
public string jins { get; set; }
public string yashash_manzil { get; set; }
public string telefon_raqam { get; set; }
public virtual void getInfo()
{
Console.WriteLine($"Ismi: {ism}");
Console.WriteLine($"Familiya: {familiya}");
Console.WriteLine($"Tugilgan yili: {tugilgan_yil}");
Console.WriteLine($"Jinsi: {jins}");
Console.WriteLine($"Yashash manizili: {yashash_manzil}");
Console.WriteLine($"Telefon raqami: {telefon_raqam}");
}

}
class TALABALAR_GURUHI : SHAXS
{
public string kurs { get; set; }
public string guruh_nomi { get; set; }
public override void getInfo()
{
Console.WriteLine($"Ismi: {ism}");
Console.WriteLine($"Familiya: {familiya}");
Console.WriteLine($"Tugilgan yili: {tugilgan_yil}");
Console.WriteLine($"Jinsi: {jins}");
Console.WriteLine($"Yashash manizili: {yashash_manzil}");
Console.WriteLine($"Telefon raqami: {telefon_raqam}");
Console.WriteLine($"Kursi: {kurs}");
Console.WriteLine($"Guruh nomi: {guruh_nomi}");
}
}
class Program
{
static List<TALABALAR_GURUHI> talabalar = new List<TALABALAR_GURUHI>();
static void Main(string[] args)
{
main();
Console.ReadKey();
}
static void main()
{
Console.WriteLine("1.Talaba qo'shish");
Console.WriteLine("2.Talabalar haqida ma'lumot");
Console.WriteLine("3.Talaba o'chirish");
Console.WriteLine("4.Talabalarni tartiblash");
Console.WriteLine("5.Talaba qidirish");
Console.WriteLine("0.Chiqish");
Console.Write(">>>>>>>>>>> ");
int a = Convert.ToInt32(Console.ReadLine());
switch (a)
{
case 1:
Console.Write("Ismini kiriting: ");
string ism = Console.ReadLine();
Console.Write("Familiyasini kiriting: ");
string familiya = Console.ReadLine();
Console.Write("Tugilgan yilini kiriting: ");
string tugilgan_yil = Console.ReadLine();
Console.Write("Jinsini kiriting: ");
string jins = Console.ReadLine();
Console.Write("Yashash manzilini kiriting: ");
string yashash_manzil = Console.ReadLine();
Console.Write("Telefon raqamini kiriting: ");
string telefon_raqam = Console.ReadLine();
Console.Write("Kursini kiriting: ");
string kurs = Console.ReadLine();
Console.Write("Guruhi nomini kiriting: ");
string guruh_nomi = Console.ReadLine();
talabalar.Add(new TALABALAR_GURUHI() { ism = ism, familiya =
familiya, tugilgan_yil = tugilgan_yil, jins = jins, yashash_manzil = yashash_manzil,
telefon_raqam = telefon_raqam, kurs = kurs, guruh_nomi = guruh_nomi });
Console.WriteLine("\n\n\n\n");
main();
break;
case 2:
int i = 1;
foreach(TALABALAR_GURUHI talaba in talabalar)
{
Console.WriteLine();
Console.WriteLine($"{i}-talaba haqida ma'lumot:");
talaba.getInfo();
i++;
}
Console.WriteLine("\n\n\n\n");
main();
break;
case 3:
int j = 1;
foreach (TALABALAR_GURUHI talaba in talabalar)
{
Console.WriteLine();
Console.WriteLine($"{j}-talaba haqida ma'lumot:");
talaba.getInfo();
j++;
}
Console.WriteLine("\n\n");
Console.Write("Qaysi talabani o'chirmoqchisiz(tartib nomerini
kiriting): ");
int nomer = Convert.ToInt32(Console.ReadLine());
talabalar.RemoveAt(nomer);

Console.WriteLine("\n\n\n\n");
main();
break;
case 4:
List<TALABALAR_GURUHI> tartiblangan = new List<TALABALAR_GURUHI>();
while (talabalar.Count > 0)
{
string min = talabalar[0].ism;
int index = 0;
for (int k = 0; k < talabalar.Count; k++)
{
if ((int)talabalar[k].ism[0] < (int)min[0])
{
min = talabalar[k].ism;
index = k;
}
}
tartiblangan.Add(new TALABALAR_GURUHI() { ism =
talabalar[index].ism, familiya = talabalar[index].familiya, tugilgan_yil =
talabalar[index].tugilgan_yil, jins = talabalar[index].jins, yashash_manzil =
talabalar[index].yashash_manzil, telefon_raqam = talabalar[index].telefon_raqam, kurs =
talabalar[index].kurs, guruh_nomi = talabalar[index].guruh_nomi });
talabalar.RemoveAt(index);
}
talabalar = tartiblangan;
Console.WriteLine("\n\n\n\n");
main();
break;
case 5:
Console.Write("Talaba haqida biron ma'lumot kiriting: ");
string malumot = Console.ReadLine();
foreach (TALABALAR_GURUHI talaba in talabalar)
{
if(talaba.ism == malumot || talaba.familiya == malumot ||
talaba.tugilgan_yil == malumot || talaba.jins == malumot || talaba.yashash_manzil ==
malumot || talaba.telefon_raqam == malumot || talaba.kurs == malumot || talaba.guruh_nomi
== malumot)
{
Console.WriteLine("\n\n");
talaba.getInfo();
}
}
Console.WriteLine("\n\n\n\n");
main();
break;
default:
Console.WriteLine("Dastur tugadi...");
break;
}
}
}
}
Vorislik

Berilgan satrni oqimdan o‘qish, saqlash, chop qilish amallarini bajaradigan MATN sinfi
yaratilsin. Uning vorisi sifatida faqat lotin harfida yozilgan matnni shifrlaydigan va qayta
tiklaydigan SHIFRLASH sinfi aniqlansin. Shifrlash uchun lotin harflar alfaviti olinadi. Jarayon
matndagi har bir harf bo‘yicha chapdan o‘ng tomonga ketma-ket ravishda amalga oshiriladi. Har
qadamda alfavitni ko‘rsatilgan songa siklik chapga suriladi va matndagi ayni harfni uning hosil
bo‘lgan alfavitdagi o‘rnidagi (indexidagi) harf bilan almashtiriladi. Har bir qadam uchun
alfavitni surish soni beriladi. Masalan, 5,3,2,4 sonlari berilgan bo‘lsin. Birinchi qadamda, y’ani
matnning birinchi harfini kodlashda alfavit 5 marta chapga siklik suriladi va hosil bo‘lgan
alfavitdagi qaralayotgan harf o‘rnida paydo bo‘lgan harf bilan birinchi xarf almashtiriladi.
Ikkinchi qadamda alfavit yana 3 marta chapga suriladi va hokazo. To‘rtinchi qadamdan keyin,
ya‘ni alfavit 4 marta chapga surilgandan keyin, surilshlar ro‘xati takrorlanadi.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Collections;

namespace vorislik_12
{
class MATN
{
public string path { get; set; }
public void yozish(string matn)
{
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine(matn);
}
}
public void oqish()
{
Console.WriteLine(File.ReadAllText(path));
}
}
class SHIFRLASH : MATN
{
public char[] harflar = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k',
'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z' };
public int n { get; set; }
public void shifrlash()
{
string[] matn = File.ReadAllText(path).Split();
string b = "";
foreach (string i in matn)
{
if (i.Length > 0)
{
string a = "";
foreach (char j in i)
{
if (Array.IndexOf(harflar, j) + n <= harflar.Length - 1)
a += harflar[Array.IndexOf(harflar, j) + n];
else
a += harflar[Array.IndexOf(harflar, j) + n - harflar.Length +
1];
}
b += a + " ";
}
}
Console.WriteLine(b);
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine(b);
}
}
public void deshifrlash()
{
string[] matn = File.ReadAllText(path).Split();
string b = "";
foreach (string i in matn)
{
if (i.Length > 0)
{
string a = "";
foreach (char j in i)
{
if (Array.IndexOf(harflar, j) - n >= 0)
a += harflar[Array.IndexOf(harflar, j) - n];
else
a += harflar[harflar.Length - 1 + Array.IndexOf(harflar, j) -
n];
}
b += a + " ";
}
}
using (StreamWriter sw = File.CreateText(path))
{
sw.WriteLine(b);
}
}
}
class Program
{
static void Main(string[] args)
{
main();
Console.ReadLine();
}
static SHIFRLASH shifrlash = new SHIFRLASH() { path = @"C:\File\d.txt", n = 5 };
static void main()
{
Console.WriteLine("1.Matn yozish");
Console.WriteLine("2.Matn o'qish");
Console.WriteLine("3.Shifrlash");
Console.WriteLine("4.Deshifrlash");
Console.WriteLine("0.Chiqish");
Console.Write(">>>>>>>>>>>");
int r = Convert.ToInt32(Console.ReadLine());
switch (r)
{
case 1:
Console.WriteLine("Matn kiriting: ");
string matn = Console.ReadLine();
shifrlash.yozish(matn);
Console.WriteLine("\n\n\n\n");
main();
break;
case 2:
shifrlash.oqish();
Console.WriteLine("\n\n\n\n");
main();
break;
case 3:
shifrlash.shifrlash();
Console.WriteLine("\n\n\n\n");
main();
break;
case 4:
shifrlash.deshifrlash();
Console.WriteLine("\n\n\n\n");
main();
break;
default:
Console.WriteLine("Dastur tugadi...");
break;
}
}
}
}

Interfeys. Umumlashgan interfeys


Butun
a 1 , a2 , .. . .a 10 sonlari berilgan, faraz qilaylik, 10 ta tosh bo'lib, ularning og’irliklari mos

ravishda
a 1 .....a10 , c k −m k og’irlikni xosil qilish usullari soni bo’lsin, ya'ani har bir c k -
a 1 x 1 + .. .+a10 x 10=mk tenglama yechimlaridir, bu yerda x (i=1,..,10) o‘zgaruvchisi 0 yoki 1
i

qiymat qabul qiladi. Berilgan 1 2


m , m , .. . ,m
10 og’irliklar uchun c 1 , .. . , c 10− hosil qilinsin. (Sinf
nomi an_n, umumlashgan interfeys nomi AN_N)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace interfeys_11
{
interface AN_N
{
double[] C();
}
class an_n : AN_N
{
public int[] A { get; set; }
public double[] M { get; set; }
public int[] X { get; set; }
public double[] C()
{
double[] c = new double[10];
double sum = 0;
for(int i = 0; i < 10; i++)
{
sum += A[i] * X[i];
}
for (int i = 0; i < 10; i++)
{
c[i] = M[i] + sum;
}
return c;
}
}
class Program
{
static void Main(string[] args)
{
int[] A = new int[10];
double[] M = new double[10];
int[] X = new int[10];
for (int i = 0; i < 10; i++)
{
Console.Write($"A{i+1} = ");
A[i] = Convert.ToInt32(Console.ReadLine());
Console.Write($"M{i + 1} = ");
M[i] = Convert.ToDouble(Console.ReadLine());
Console.Write($"X{i + 1} = ");
X[i] = Convert.ToInt32(Console.ReadLine());
}
an_n an = new an_n() { A = A, M = M, X = X };
double[] C = an.C();
Console.Write("C:");
foreach(double i in C)
{
Console.Write($" {i}");
}
Console.ReadLine();
}
}
}

Umumlashgan sinf

Umumlashgan TO_RTBURCHAK sinfi yaratilsin. Uning tarkibida to‘rtburchak tomonlari-


a,b,c,d kiritilganda uning mavjudligini, agar mavjud bo‘lsa to‘rburchakning yuzasini, perimetri
va turini (to‘g‘riburchakli, kvadrat, parallellogram) aniqlovchi funksiya-a’zolar tuzilsin.
(Umumlashgan funksiya nomi t_t)
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace umum_sinf_16

class TO_RTBURCHAK
{

public double a { get; set; }

public double b { get; set; }

public double c { get; set; }

public double d { get; set; }

public bool mavjudmi()

return a < b + c + d && b < a + c + d && c < b + a + d && d < b + c + a;

public string turi()

if (!mavjudmi())

return "Bunday to'rtburchak mavjud emas";

if (a == b && b == c && c == d)

return "Kvadrat";

else if (a == c && b == d)

return "Parallellogram";

else if (a + c == b + d)

return "Trapetsiya";

return "Oddiy to'rtburchak";

public double perimetr()

return a + b + c + d;

}
public double yuza()

if (turi() == "Kvadrat")

return a * b;

return 0;

class Program

static TO_RTBURCHAK tortburchak = new TO_RTBURCHAK();

static void Main(string[] args)

t_t();

Console.ReadLine();

static void t_t()

Console.WriteLine("1.Tomonlarni kiritish");

Console.WriteLine("2.Mavjudligini tekshirish");

Console.WriteLine("3.Turini ko'rish");

Console.WriteLine("4.Perimetrini topish");

Console.WriteLine("5.Yuzasini topish");

Console.WriteLine("0.Chiqish");

Console.Write(">>>>>>>>>>");

int r = Convert.ToInt32(Console.ReadLine());

switch (r)

case 1:

Console.Write("a = ");

double a = Convert.ToDouble(Console.ReadLine());

Console.Write("b = ");

double b = Convert.ToDouble(Console.ReadLine());

Console.Write("c = ");
double c = Convert.ToDouble(Console.ReadLine());

Console.Write("d = ");

double d = Convert.ToDouble(Console.ReadLine());

tortburchak.a = a;

tortburchak.b = b;

tortburchak.c = c;

tortburchak.d = d;

Console.WriteLine("\n\n\n\n");

t_t();

break;

case 2:

if (tortburchak.mavjudmi())

Console.WriteLine("Bunday to'rtburcha mavjud");

else

Console.WriteLine("Bunday to'rtburcha mavjud emas");

Console.WriteLine("\n\n\n\n");

t_t();

break;

case 3:

string tur = tortburchak.turi();

Console.WriteLine(tur);

Console.WriteLine("\n\n\n\n");

t_t();

break;

case 4:

Console.WriteLine(tortburchak.perimetr());

Console.WriteLine("\n\n\n\n");

t_t();

break;

case 5:

Console.WriteLine(tortburchak.yuza());

Console.WriteLine("\n\n\n\n");

t_t();
break;

default:

Console.WriteLine("Dastur tugadi...");

break;

Umumlashgan delegatlar

Berilgan n-darajali P(x) ko‘phadini tavsiflovchi KUPHAD sinfi yaratilsin. Unda ikkita ko‘phadni
qo‘shish, ko‘pytirish, ayirish amallari, hamda berilgan a va n uchun P(a) qiymatini m soni
bilan taqqoslash amallari opertor - funksiya ko‘rinishida aniqlansin. (umumlashgan delegat nomi
Polinom_k)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace delegat_19
{
class KOPHAD
{
public int n1 { get; set; }
public int[] A1 { get; set; }
public int n2 { get; set; }
public int[] A2 { get; set; }
public int a { get; set; }
public delegate double[] Polinom_k(int n1,int[] A1, int n2, int[] A2,int a);
public void funk(Polinom_k obj)
{
Console.WriteLine("Ko'paytma: " + obj(n1, A1, n2, A2, a)[0]);
Console.WriteLine("Yig'indi: " + obj(n1, A1, n2, A2, a)[1]);
Console.WriteLine("Ayirma: " + obj(n1, A1, n2, A2, a)[2]);
}
}
class Program
{
static void Main(string[] args)
{
Console.Write("n1 = ");
int n1 = Convert.ToInt32(Console.ReadLine());
int[] A1 = new int[n1 + 1];
for (int i = 0; i <= n1; i++)
{
A1[i] = Convert.ToInt32(Console.ReadLine());
}
Console.Write("n2 = ");
int n2 = Convert.ToInt32(Console.ReadLine());
int[] A2 = new int[n2 + 1];
for (int i = 0; i <= n2; i++)
{
A2[i] = Convert.ToInt32(Console.ReadLine());
}
Console.Write("a = ");
int a = Convert.ToInt32(Console.ReadLine());
KOPHAD kophad = new KOPHAD() { n1 = n1, A1 = A1, n2 = n2, A2 = A2, a = a };
kophad.funk(polinom);
Console.ReadLine();
}
static double[] polinom(int n1, int[] A1, int n2, int[] A2, int a)
{
double sum1 = 0;
for(int i = 0; i <= n1; i++)
{
sum1 += A1[i] * Math.Pow(a, i);
}
double sum2 = 0;
for (int i = 0; i <= n2; i++)
{
sum2 += A2[i] * Math.Pow(a, i);
}
double mult = sum1 * sum2;
double plus = sum1 + sum2;
double minus = sum1 - sum2;
double[] sum = { mult, plus, minus };
return sum;
}
}
}

Oqimlar(Fayllar). Matn fayllar

Name1 nomli bo’sh bo’lmagan mant fayl va k natural soni berilgan. Ikkita matn fayllari hosil
qilinsin: Name2 faylga Name1 har bir satrning birinchi | oxirgi k ta belgisini o’zida saqlovchi,
(agarda satr uzunligi k kichik bo’lsa satrning o’zini saqlasin), Name3 fayli esa har bir satrning k
– chi belgisidan tashkil topsin (agarda satr uzunligi k dan kichik bo’lsa Name3 fayliga probel
yozilsin.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;

namespace matn_44
{
class Program
{
static void Main(string[] args)
{
Console.Write("k = ");
int k = Convert.ToInt32(Console.ReadLine());
string[] lines = File.ReadAllLines(@"C:\File\Name1.txt");
using (StreamWriter sw = File.CreateText(@"C:\File\Name2.txt"))
{
sw.Write("");
}
using (StreamWriter sw = File.CreateText(@"C:\File\Name3.txt"))
{
sw.Write("");
}
for (int i = 0; i < lines.Length; i++)
{
using (StreamWriter sw = File.AppendText(@"C:\File\Name2.txt"))
{
if (lines[i].Length > k)
{
sw.WriteLine(lines[i].Substring(0, k));
sw.WriteLine(lines[i].Substring(lines[i].Length - k));
}
else
{
sw.WriteLine(lines[i]);
}
}
using (StreamWriter sw = File.AppendText(@"C:\File\Name3.txt"))
{
if (lines[i].Length >= k)
{
sw.WriteLine(lines[i][k - 1]);
}
else
{
sw.WriteLine(" ");
}
}
}
Console.WriteLine("Matn yozildi...");
Console.ReadLine();
}
}
}

You might also like