Войти Регистрация

Docx

  • Рефераты
  • Дипломные работы
  • Прочее
    • Презентации
    • Рефераты
    • Курсовые работы
    • Дипломные работы
    • Диссертациии
    • Образовательные программы
    • Инфографика
    • Книги
    • Тесты

Информация о документе

Цена 12000UZS
Размер 263.8KB
Покупки 4
Дата загрузки 06 Апрель 2024
Расширение docx
Раздел Курсовые работы
Предмет Информатика и ИТ

Продавец

Bohodir Jalolov

Loyihalarni boshqarish tizimini ishlab chiqish

Купить
Loyihalarni boshqarish tizimini ishlab chiqish
REJA: 
I.KIRISH .................................................................................................. 3
II. C# TILI VA UNING IMKONIYATLARI.
2.1  Sinflar, metodlar, xususiyatlar ............................................... 5
2. 2  C# tilida ifoda, instruksiya va shart operatorlari ............... 14
III. LOYIHALAR BOSHQARUV TIZIMINI ISHLAB CHIQISH
3.1  Loyihalar boshqaruvini amalga oshirish.................................21
3.2  Loyihalar boshqaruv tizimini ishlab chiqish ga doir misollar.. 26
IV. Xulosa................................................................................................. 29
 Foydalanilgan adabiyotlar.....................................................................30
1 KIRISH
      Kompyuter   tillari   o z-o zidan   emas,   balki   o zaro   bir-birigaʻ ʻ ʻ
bog liqlikda   mavjud   bo ladi.   Har   qanday   yangi   til   u   yoki   bu   shaklda   oldingi	
ʻ ʻ
yaratilgan   tillarning   xossalarini   o ziga   meros   qilib   oladi,   ya ni   ketma-ketlik	
ʻ ʼ
prinsipi   amalga   oshiriladi.   Natijada   bitta   tilning   imkoniyatlari   boshqalari
tomonidan   foydalaniladi   (masalan,   yangi   xususiyatlar   mavjud   kontekstga
birlashtiriladi,   tilning   eski   tuzilishlari   esa   o chirib   yuboriladi).  	
ʻ Kompyuter
tillarining   evolyutsiyasi   shunday   tarzda   ro y   beradi   va   dasturlash   mahorati	
ʻ
takomillashtiriladi.   C#   tili   yuqoridagilardan   istisno   emas,   u   boshqa   dasturlash
tillarining ko plab foydali imkoniyatlarini meros qilib oldi va dunyoda eng ko p	
ʻ ʻ
qo llaniladigan   ikkita   kompyuter   tillari	
ʻ   —   C,   C++,   shuningdek   Java   tili   bilan
uzviy bog liqdir. C# tili 1972 yilda Nyu-Djersi shtatining Myurrey-xill shahrida	
ʻ
Bell   Laboratories   kompaniyasining   tizimli   dastur   tuzuvchisi   Dennis
Richie   tomonidan   yaratilgan.   Bu   til   o zini   shunchalik   yaxshi   ko rsatdiki,   oxir	
ʻ ʻ
oqibatda   unda   Unix   operatsion   tizimlarining   90   %   yadro   kodlari   yozildi   (oldin
quyi darajadagi til assemblerda yozilgan). C# ning vujudga kelishidan oldinroq
yaratilgan tillardan, ( Pascal   ulardan eng mashhuri hisoblanadi), yetarli darajada
muvaffaqiyatli   foydalanilgan,   lekin   aynan   C#   tili   dasturlashning   zamonaviy
davri   boshlanishini   belgilab   berdi.   1960-yillarda   dasturlash   texnologiyalaridagi
strukturaviy   dasturlashlarning   paydo   bo lishiga   olib   kelgan   inqilobiy	
ʻ
o zgarishlar   C#   tilini   yaratish   uchun   asosiy   imkoniyatlarni   belgilab   berdi.	
ʻ
Strukturaviy   dasturlashlarning   paydo   bo lishiga   qadar   katta   dasturlarni   yozish	
ʻ
qiyin   bo lgan,   satr   kodlari   miqdorining   oshishi   sababli   dasturlarning   o tish	
ʻ ʻ
joylari   chalkash   massalariga   aylanib   ketishiga   olib   keladi.   Strukturaviy   tillar
dastur   tuzuvchi   instrumentariysiga   shartli   operatorlarni,   lokal   o zgaradigan	
ʻ
tartiblarni  va boshqa  mukammallashtirishlarni  qo shib  bu muammoni  hal  qildi.	
ʻ
Shunday   tarzda   nisbatan   katta   dasturlarni   yozish   imkoniyati   vujudga   keldi.
Aynan   C#   tili   kuch,   elegantlik   va   ma nodorlikni   o zida   muvaffaqiyatli	
ʼ ʻ
birlashtirgan   birinchi   strukturaviy   til   bo ldi.   Uning   bo lishi   mumkin   bo lgan	
ʻ ʻ ʻ
2 xatolar   mas uliyatini   tilga   emas   dastur   tuzuvchi   zimmasiga   yuklaydiganʼ
prinsiplar   bilan   inobatga   olgan   holda   sintaksisdan   foydalanishdagi   qisqalik   va
osonlik kabi xususiyatlari tezda ko plab tarafdorlarini topdi. Bugungi kunda biz	
ʻ
mazkur   sifatlarni   o z   o zidan   anglashiladigan   deb   hisoblaymiz,   lekin   S   da	
ʻ ʻ
birinchi   marotaba   dastur   tuzuvchiga   zarur   bo lgan   ajoyib   yangi   imkoniyatlar	
ʻ
mujassamlashtirilgan.   Natijada 1980 yillardan boshlab S strukturaviy dasturlash
tillari   orasida   eng   ko p   foydalaniladiganlaridan   biri   bo lib   qoldi.   Biroq,	
ʻ ʻ
dasturlashning   rivojlantirish   choralariga   ko ra   bundanda   kattaroq   dasturlarni	
ʻ
qayta   ishlash   muammosi   kelib   chiqmoqda.   Loyiha   kodi   ma lum   bir   hajmga	
ʼ
yetgan   zahoti   (uning   raqamli   ahamiyati   dastur,   dastur   tuzuvchi,   foydalanilgan
instrumentlarga   bog liq   bo ladi,   lekin   taxminan   5000   satr   kodlari   nazarda	
ʻ ʻ
tutilayapti)   S-dasturlarini   tushunish   va   kuzatib   borishda   qiyinchiliklar   yuzaga
keladi.
3 II. C# TILI VA UNING IMKONIYATLARI
2.1  Sinflar, metodlar, xususiyatlar.  
      Sinflar.   Sinflar   –   har   bir   obyektga   yo’nalritilgan   dasturlash   tilining
yuragi hisoblanadi. Shuni ta’kidlab o’tish lozimki, sinflar usullar va ma’lumotlar
uchun   kapsula (yig’imi)   vazifasini   bajarib,   ularni   qayta   ishlanishida   asos
hisoblanadi.
Sinflarni aniqlash.
Agarda   siz   C++   yoki   Java   dasturlash   tillari   bilan   tanish   bo’lsangiz,   siz
uchun   C#   tilida   sinflarni   aniqlashning   sintaksisi   qiyinchilik   tug’dirmaydi.
Yaratayotgan   sinfingiz   oldiga   class   kalit   so’zini   qo’yib,   {   }   orasiga   shu   sinf
elementlarini (a’zolarini) yozishingiz kerak.
class Uchburchak
{
private long a,b,c;
}
Bu   oddiy   sinf   bo’lib,   unda   faqat   a,   b,   c   o’zgaruvchisi   berilgan.
Sinflar ishlatilishi.
Faraz   qiling,   biror   firma   ishchisi   haqida   ma’lumot   kirityapsiz.   Bunda
ishchining   har   xil   xususiyatlarini   (yoshi,   familiyasi,   ismi,   tug’ilgan   yili   va
hokazo) kiritish zarur bo’ladi. Buning uchun har bir ma’lumotni alohida yozish
va   keyingi   ishchining   ma’lumotlarini   kiritish   uchun   joriy   ishchining
ma’lumotlarini o’chirish kerak bo’ladi. Sinf esa barcha muammolarni hal etadi.
Masalan: shu ishchining (barcha ishchilarning) xususiyatlari o’zgaruvchi sifatida
sinf elementiga qo’shiladi
using System;
4 namespace test
{
//sinf boshi
class Worker
public int age=0;
public string name;
}
//sinf oxiri
class Test
{
static void Main(string[] args)
{
Worker wrkl = new Worker();
wrkl.age=34;
wrkl.name="Karim";
Console .WriteLine ((wrkl .name)+", " +wrkl.age) ;
} 
}
Dasturni   ishga   tushiring.   Ekranga   “Karim   ,   34   ”   degan   xabar   chiqadi.   Keling
dasturimizni chuqurroq o’rganib chiqamiz.
Birinchi navbatda …
class Worker
public int age=0;
public string name;
5 qismida   biz   sinfimizni   aniqladik(yaratdik).   Sinfimizda   ikkita   age   va   name
maydonlari(o’zgaruvchilari ) berilgan. E’tibor bering, C/C++ dan farqli o’laroq
biz   C#   da   ba’zi   bir   boshlang’ich   qiymatlarni   berishimiz   mumkin.   Lekin
boshlang’ich   qiymatlarni   berish   shart   emas.   O’zgaruvchilar   oldin   esa   public
kalit so’zini berdik. Bu esa C++ dagi kabi C# da ham bu o’zgaruvchi (funksiya
bo’lishi   ham   mumkin   )   ning   sinfdan   tashqarida   ham   ishlatilishi   mumkinligini
bildiradi.   Agarda   biz   o’zgaruvchidan   oldin   biror   bir   kalit   so’z   ishlatmasak,   u
holda   bu   o’zgaruvchi   private   kalit   so’zini   avtomatik   tarzda   o’zlashtiradi   va
sinfdan   tashqarida   ishlamaydi.   Bu   haqda   keyinroq   yana   chuqurroq   tanishib
o’tamiz.
Keyingi satrda esa …
Worker wrkl = new Worker();
…
sinf   nusxasini   kuche   (xotira   qismi)   ga   kiritib,   unga   murojaat   yubordik.
Keyingi satrda esa
…
wrkl.age=34;
wrkl.name="Sharipov";
Console .WriteLine ((wrkl .name)+", "+t+wrkl.age) ;
…
sinfimizni   ishga   tushirdik   va   ba’zi   qiymatlarni   o’zlashtirdik.
Sinf tarkibi.
      Common   Type   System   da   aniqlangan   tiplar   sinflarda   qo’llab
quvvatlanadi va quyidagi ko’rinishda bo’ladi :
Maydon.   Bu   o’zgaruvchi   o’zida   bir   necha   qiymatni   saqlaydi.   Obyektga
yo’naltirilgan   dasturlash   tillarida   bu   o’zgaruvchilar   obyekt   ma’lumotlari   deb
ham   yuritiladi.  Maydonga   bir   necha   modifikator   qo’llash   mumkin   (uni   qanday
6 ishlatishingizdan   qat’iy   nazar).   Bu   modifikatorlarga   readonly ,   static   va   const
lar kiradi.
Metod(usul).   Bu   real   (amaldagi)   kod   bo’lib,   u   obyekt   ma’lumotlariga
(maydonga ham) ta’sir ko’rsatadi. Hozir biz bu metod tushunchasi bilan obyekt
ma’lumotlarini aniqlashga harakat qilamiz.
Xususiyat.   Ba’zida   xususiyatlarni   aqlli   maydon   deb   atashadi(smart
fields).   Chunki,   xususiyatlar   aslida   metod,   lekin   ular   sinf   foydalanuvchilari
uchun maydon bo’lib ko’rinadi.
O’zgarmaslar.   Bu   shunday   o’zgaruvchi   maydonki,   uning   qiymatini   hech
qachon o’zgartirib bo’lmaydi.
Indeksatorlar.   Agar   xususiyatlar   aqlli   maydonlar   hisoblansa,   unda
indeksatorlar   aqlli   massivlardir.   Chunki   ular   obyektlarni   get   va   set
metodaksessorlari bilan indeksatsiya qilishda qo’llaniladi.
Xodisalar.   Xodisalar   –   Microsoft   Windowsning   ajralmas   qismi   bo’lib,
sichqoncha   qimirlashi,   oynalar   yopilishi,   ochilishi   va   hokazolarda   qo’llaniladi.
Main metodi.
C#   da   tuzilgan   har   qanday   dasturning   hech   bo’lmaganda   birta   sinfida
Main   metodi   bo’lshi   shart   va   unga   public  yoki   static   modifikatorlari   qo’yilgan
bo’lishi   kerak.   Komplyator   uchun   Main   metodining   qaysi   sinfda   yozilganligi
ahamiyatsiz,   bu   metod   yozilgan   sinf   komplyatsiya   tartibiga   hech   qanday   ta’sir
ko’rsatmaydi. C# tili shunday aqlliki, o’zi avtomatik tarzda Main metodini izlab
topadi va u dastur natijasining ekranga chiqishini ta’minlaydi(dastur bajarilishini
ham).   Shunday   qilib   siz   Main   metodini   istalgan   sinfga   joylashtirishingiz
mumkin,   lekin   buning   uchun   alohida   sinf   yaratish   tavsiya   etiladi.   Masalan:
class MyClass
private in MyClassId;
7 {
class AppClass
static public void Main()
MyClass myObj =new MyClass( );
} 
}
Ruxsat modifikatorlari.
Ruxsat modifikatori  Mazmuni, vazifasi
Public  Elementni   sinfdan
tashqarida   va   ichki
sinflarda   ishlatilish
mumkin
Protected  Elementni   sinfdan
tashqarida   ishlatish
mumkin   emas,   u   faqat
ichki   sinflarda
ishlatilishi mumkin
Private  Element faqat shu sinfda
ishlatiladi,   u
ichki   sinflarda   ham
ishlamaydi
Internal  Element   faqat   shu
komplyatsiya
qilinuvchi   dastur   uchun
ishlaydi,   bu
public   va   protected
modifikatorlarining
8 birlashmasidir
Buyruq satrining elementlari.
Siz   Main   metodini   satr   massivini   qabul   qiluvchi   qilib   e’lon   qilsangiz,
buyruq satriga murojaat qilishingiz mumkin. Masalan:
using System;
class  С  ommandLineApp
{
public static void Main(string[] args)
{
foreach (string arg in args]
  {
Console. WriteLine( "Argument: {0}", arg);
} 
}
Qaytarilgan qiymat.
Ko’pincha Main metodi quyidagicha aniqlanadi:
class SomeClass
{
public static void Main()
… 
} 
…
  }
Lekin   siz   Main   metodini   int   tipidagi   qiymatni   qaytaruvchi   qilib   e’lon
qilishingiz mumkin:
9 public static int Main() {
return 0;
}
Bir necha Main metodlari.
C#   mualliflari   tomonidan   shunday   mexanizm   qo’yilganki,   bu   mexanizm
bir   nechta   Main   metodini   aniqlay   oladi.   Bu   nima   uchun   kerak   dersiz.
Sabablardan   biri   bu   –   sizning   dasturingizga   test   kodini   kiritishdir.   Keyin
almashtirish   kaliti   bilan   /main;<Sinf_nomi>,   kerakli   sinf   nomi   beriladi   va
komplyator uni ishga tushiradi. Masalan:
using System;
class Main1 {
public static void Main()
{
Console.WriteLine("Main1");
class Main2
{
public static void Main()
{
Console.WriteLine("Main2");
}
Bu   dasturni   Main1.Main   metodi   natija   chiqaruvchi   nuqta   sifatida   ishlashi
uchun   quyidagi   kodni:   Csc   MultipleMain.es/main:Main1   berish   zarur.   Agar
alamashtirish   kalit   so’zi   /main.Main2   deb   yozilsa,   Main2.Main   metodi   ishga
tushadi.
Sinflarni inisializatsiya qilish va konstruktorlar.
10 Obyektga   yo’naltirilgan   dasturlash   tillarining   enga   katta   yutug’i
(C/C++/C#/Java/J#/VB)-   shundan   iboratki,   siz   o’zingiz   mustaqil   ravishda
maxsus   metodlarni   aniqlashingiz   mumkin.   Bu   metodlar   sinflarning   nusxasi
olinganda chaqirish uchun qo’llaniladi. Bu metodlar konstruktorlar deb ataladi.
Qachon   foydalanuvchi   obyekt   nusxasini   chaqirganda,   uning   konstruktori
chaqiriladi va u foydalanuvchining shu obyekt ustida boshqa amal bajargunicha
unga   boshqaruvni   qaytarishi   kerak.   Lekin   konstruktor   nomini   qanday   qo’yish
kerak?   Bu   muammoni   C#   mualliflari   quyidagicha   hal   etishdi   :   C#
konstruktorlarining   nomi   sinf   nomi   bilan   nir   xil   bo’lishi   kerak.   Masalan:
using System;
class Constructor1A рр {
ConstructorlApp()
{
Console.WriteLine("a konstruktor") ;
}
public static void Main()
{
ConstructorlApp app = new ConstructorlApp();
} 
}
Konstruktorlar   qiymat   qaytarmaydi.   Agar   siz   buni   amalga   oshirmoqchi
bo’lsangiz, komplyator o’zgaruvchining sinf nomi bilan bir xil nomga ekanligini
xato sifatida xabar qiladi.
Sinfning statistik elementlari.
        Siz   sinf   elementini   yo   statistik   (statistic   member),   yo   nusxa(instance
member) qilib aniqlashingiz mumkin. Bu shuni anglatadiki, har bir sinf nusxasi
uchun   har   bir   element   nusxalanadi.   Agar   siz   elementni   statistic   deb   e‘lon
11 qilsangiz   undan   faqat   birta   nusxa   olinadi.   Statistic   element   dastur   joriy   sinfni
ishga   tushirganidan   boshlab   to   dastur   yakunlanganicha   “yashaydi”.   Masalan:
using System;
class InstCount{
public InstCount IS
}
instanceCount++;
static public int instanceCount;
//instanceCount = 0;
class AppClass {
public static void Main() {
Console.WriteLine(InstCount.instanceCount)
InstCount ic1 = new InstCount ();
Console.WriteLine(InstCount.instanceCount);
InstCount ic2 = new InstCount ();
Console.WriteLine(InstCount.instanceCount) ; 
}
O’zgarmaslar va o’zgarmas maydon tushunchasi.
      O’zgarmas   –   o’z   nomi   bilan   o’zgarmas   bo’lib,   u   dastur   ishlashi   davomida
hech   qachon   o’zgarmaydigan   maydondir.   Biror   nimani   const   etib   belgilaganda
so’ng   ikkita   qoidani   esda   tutish   lozim.   Birinchi   –   o’zgarmas   dastur   davomida
dasturchi yoki komplyator (odatiy parametrlar yuklansa) tomonidan kiritiluvchi
elementdir.   Ikkinchi-o’zgarmas   nomi   xuddi   literal   ko’rinishida   yozilishi   kerak.
Maydonni   o’zgarmas   deb   e’lon   qilish   uchun   element   oldiga   const   kalit   so’zni
yozishingiz yetarli. Masalan:
using System;
12 class MagicNumbers
public const double pi = 3.1415;
public const int g = 10 ;
class ConstApp {
public static void Main() {
Console.WriteLine("pi = {0}, g = {0}",
MagicNurrbers . pi, MagicKumbers . g ) ;
 } 
}
O’zgarmas   maydon   –   const   deb   e‘lon   qilingan   madon   shuni   anglatadiki,
dasturchi   unga   doimiy   qiymatni   o’zlashtirmoqchi   bo’lyapti,   bu   plyus.Lekin   u
komplyatsiya paytida bu maydonning qiymati aniq bo’lgandagina ishlaydi.
   2.2 C# tilida ifoda, instruksiya va shart operatorlari.
Ifodalar.   Ifoda   –   qiymatni   aniqlovchi   kod   satridir.   Oddiy   ifodaga   misol:
MyValue=100;
MyValue   ning   o’zi   bir   qiymatni   aniqlovchi   operator   bo’lsada,   uni   ham   qiymat
sifatida   o’zlashtirish   mumkin.   Chunki   u   100   qiymatini   qabul   qiladi.   Misol
uchun: MysecondValue=MyValue=100; Bu misolda 100 literali avval MyValue
ga keyin “=“ o’zlashtirish operatori yordamida MySecondValue o’zgaruvchisiga
o’zlashtiriladi.   Bu   bilan   100   qiymati   har   ikkala   o’zgaruvchiga   birdaniga
o’zlashtiriladi.   Bu   yo’l   bilan   siz   bir   necha   o’zgaruvchiga   birta   qiymatni
o’zlashtirish imkoniyatiga ega bo’lasiz.
Int a=b=c=d=g=h=l=20;
      Bunda   bir   necha   shartni   bir   vaqtda   tekshirish   zarurati   hisobga   olinadi.   C#
tilida buning uchun maxsus qo’shish (shartni) kalit so’zlari mavjud : && - va, | |
- yoki, ! – inkor (!= bo’lsa, teng emas ma’nosida). Masalan:
using System;
13 namespace Misol
{
class Program
{ 
static void Main(string[] args)
{int n1 = 5;
int n2 = 0;
if ( (n1 = = 5) && (n2 = = 5))
Console.WriteLine(" Salom");
else
Console.WriteLine("Yoshlar");
If ((n1 = = 5) | | (n2 = = 5))
Console.WriteLine("Buxoro");
else
Console.WriteLine("Vaqt");}
}
   Bu misolda har bir  if  operatori ikkita shartni tekshirib boradi.
Switch operatori.
        Juda   ko’p   hollarda   ichma-ich   yozilgan   shart   operatorlari   ko’p   tekshirish
olib   borib   bir   nechta   amal   bajaradi.   Lekin   bulardan   faqat   bittasigina   haqiqiy
bo’ladi. Masalan:
if (myValue == 10) Console.WriteLine("myValue teng 10");
else
if (myValue == 20) Console.WriteLine("myValue teng 20 " ) ;
else
if (myValue == 30) Console.WriteLine("myValue teng 30 " ) ;
else ....
    Bunday   murakkab   shart   tekshirilishi   bo’lganda   if   operatoridan   ko’ra,
uning   yangi   versiyasi   bo’lgan   switch   dan   foydalanish   afzal.Switch   operatori
quyidagicha ishlaydi:
14 Switch (ifoda)
{
case  : o’zgarmas ifoda : instruksiya o’tish ifodasi
default : instruksiya
}
        Misoldan   ko’rinib   turibdiki,   switchda   ham   tekshirilayotgan   ifoda   if   …
else   dagi   kabi,   (   )   orasiga   olingan   va   operatordan   keyin
yozilgan. Case (tekshirish) va default (aks holda) bo’limlari qaysi amal bajarilishi
zarurligini   aniqlab   beradi. Case   operatori   albatta   biror   bir   tenglashtirish   uchun
qiymat talab qiladi.
{
switch ( myValue )
case 10:
Console.WriteLine("myValue teng 10") ;
break;
case 20:
Console.WriteLine("myValue teng 20");
break;
case 30: Console.WriteLine("myValue teng 30");
break;
}
    Switch   operatorida   default   amalini   yozish   shart   emas,   chunki   u   berilgan
qiymatning tanlangan birorta qiymatga mos kelmaganda bajariladigan amallarni
o’z ichiga oladi. Agarda berilgan qiymat birorta tanlangan qiymatga mos kelsa,
u   holda   case   amalidan   keyin   bajariladigan   amallar   (ular   bir   nechta   bo’lsa,   {   }
orasiga   olinadi)   bajariladi,   so’ng   break   amali   switch   operatorining   ishini   shu
joyda   to’xtatadi   va   switch   operatoridan   keyin   keladigan   operator   ishini   davom
ettiradi.
C   va   C++   tillarida   keyingi   case   amaliga   avtomatik   o’tishingiz   mumkin,
15 agarda oldingi   case   amalining oxirida   break   yoki goto operatorlari yozilmagan
bo’lsa. Shunday qilib,  C  va  C++  da quyidagicha yozish mumkin :
Case : statement 1 ;
Case : statement 2;
Break ;
      Bu   misolda   statement   1   dan   so’ng   statement   2   ga   avtomatik   tarzda
o’tiladi ( C++   da). C# da bu dastur ishlamaydi, chunki   C#  tili sintaksisida   case1
dan   case2   ga   ikki   xil   vaziyatda   o’tish   mumkin   :   agarda   birinchi   amal   bo’sh
bo’lsa   ( case   dan   so’ng   hech   qanday   qiymat   tekshiriladi)   yoki   break ,   goto
operatorlari   yordamida.   Har   bir   case   operatori   o’zida   break   amalini   ushlab
turishi lozim. Masalan:
{
switch (a )
case 10:Console.WriteLine("a= 10" ) ;
break;
case 20:
Console.WriteLine("a=20");
break;
case 30: Console.WriteLine("a= 30");
break;
}
yoki quyidagicha berish ham mumkin :
using System;
namespace Misol
class MyClass
static void Main(string[j] args)
{
int user = 0;
user = Convert.Tolnt32(Console.ReadLine( ));
16 switch(user)
case 0:
Console.WriteLine("Salom User1");
break;
case 1 :
Console.WriteLine("Salom User2");
break;
case 2:
Console.WriteLine("Salom User3");
break;
default:
Console.WriteLine("Salom yangi foydalanuvchi");
break;
}
Quyida iqtisodiy masalani yechish usuli berilgan :
using System;
namespace C_Sharp_Programing
{
class Part
{
public static void Main()
{
Console.WriteLine("1:   mahsulot   nomini   kiriting,n2:   mahsulot   sonini   kiriting");
int Choice = Convert.Tolnt32(Console.ReadLine());
switch (Choice)
case 1 :
string Kane;
Console.Write("Mahsulot nomini kiriting " ) ;
Name = Console.ReadLine();
17 break;
case 2:
int Count;
Console.Write("Mahsulot sonini kiriting " ) ;
Name = Console.ReadLine();
Count = Convert.Tolnt32(Console.ReadLine()) ;
break;
default:
break;}
Switch va satrlar bilan ishlash.
    Yuqorida   keltirilgan   misollarda   user lar   butun   tipga   tegishli   edi.Agarda   siz
switch   operatorini   satrli   tipda   ishlatmoqchi   bo’lsangiz,   u   holda   quyidagicha
yozishingiz mumkin:
Case   :   “Anvar”   ;     Agarda   tekshirish   uchun   satrlar   ko’p   bo’lsa,   butun   tipli
o’zgaruvchilar   ko’p marotaba   case   operatorini ishlatishga majbur etadi. Quyida
esa satr   o’zgaruvchisi ishlatilgan switch operatori berilgan:
using System;
namespace SwitchStatement
{
class MyClass
{
static void Main(string[] args)
{
string user;
user = Console.ReadLine() ;
switch(user)
{
case "user1":
Console.WriteLine("Salom 1 chi foydalanuvchi");
18 break;
case "user2":
Console.WriteLine ("Salom 2 chi foydalanuvchi ");
break;
case "user3":
Console.WriteLine ("Salom 3 chi foydalanuvchi ");
break;
default:
Console.WriteLine("Salom 4 chi foydalanuvchi ");
break;
}
 }
    Bu   yerda   siz   foydalanuvchi   bo’lib   kirish   uchun,   butun   tip   emas   balki,   satr
tipida   kiritishingiz   mumkin   bo’ladi.Agar   siz   user1   deb   yozsangiz   ekranda
“salom birinchi foydalanuvchi” degan yozuv paydo bo’ladi.
19 III. TA’LIM MUASSASASIDA TALABALAR DAVOMATINI 
MONITORING QILISH TIZIMI.
3.1. Consol rejimi. C# tilining sintaksisi. Ma’lumotlar tiplari.
        Visual   Studio.NET   sistemasida   dasturni   kompilyatsiya   qilish   va
bajarishning   bir   necha   usuli   bor.   Ko’p   hollarda   dasturchilar   dasturni   alohida
kompilyatsiya   qilib   bir   nechta   klavishalar   kombinatsiyalari   orqali   ishlatishga
o’rganishgan.
<Ctrl>+<Shift>+<B>   tugmalarini   bosish   orqali   yoki   menyuning   Build-
>Build   Solution   qismini   tanlash   orqali   dasturni   kompilyatsiya   qilish   mumkin.
Alternativ variant sifatida instrumentlar panelidagi Build tugmasini bosish ham
mumkin.
Dasturni   kompilyatsiya   qilmasdan   ishlatish   uchun   <Ctrl>+<F5>
tugmasini   yoki   menyuning   Debug->Start   Without   Debugging   qismini   tanlash
yoki   panel   instrumentlar   qismidagi   mos   tugmani   bosish   lozim.
using System;
class Hello
{
static void Main(string[] args)
{
Console.WriteLine(“Hello”);
} 
}
C#   tilida   yozilgan   dasturni   ishlatish   uchun
1.   Kodni   fayllar   sistemasida   biror   nom   bilan   saqlash   lozim   (hello.cs)
2.   Kommandalar   satrida   csc   /debug   hello.cs   buyrug’ini   bajarish   lozim
Ushbu   buyrug’   bajarilgach,   natijaviy   .exe   kengaytmali   fayl   hosil   bo’ladi.
20 Agar   kompilyatsiya   jarayonida   xatolik   yuzaga   kelsa,   ma’lumot   chiqariladi.
/debug parametri bajariluvchi faylga maxsus simvollarni joylashtiradi. Natijada
exe faylni qayta ishlovchi dasturda taxlil qilinayotganda stekni kuzatib borishlari
mumkin.
3. Dasturni ishlatish natijasida, ekranga      Hello  yozuvi chiqariladi.
C#   dasturlash   tilida   Consol   rejimda   dastur   tuzish   uchun   yangi   loyiha
yaratamiz   ( File/New   Project/Visual   C#/   Console   Application ).   Ushbu
loyihamiz-   ning   nomini   masalan   “1-misol”   deb   nomlaymiz.   Bizga   C#   kodini
yozish uchun yangi oyna ochiladi.
          Consol   rejimida   ishlash   uchun   .NET   da   Console   sinfi   ishlatiladi.   Bu
sinfning afzalligi 2 ta qismdan iborat bo’lib: uning barcha metodlari o’zgarmas,
sanoqli bo’lib, uni ishlatish uchun nusxalash shart emas. U kiritish, chiqarish va
xatoliklarni   chiqarishni   o’z   ichiga   oladi.   Odatda   kiritish,   chiqarish   standart
Consol-da   amalga   oshiriladi   (agar   u   bo’lmasa,   masalan   oynali   masalalarda
chiqarish   amalga   oshirilmaydi),   lekin   kiritish   va   chiqarish   oqimlarini
o’zgartirish   mumkin.   Consol   bilan   ishlashda   asosan   4   metod   ishlatiladi:   Read,
ReadLine,   Write,   WriteLine,   birinchi   ikkitasi   kiritish,   qolgani   chiqarish
metodlari hisoblanadi.
Read   metodi.   Read   metodi   kiritish   qurilmalaridan   belgini   qabul   qiladi.   U
int tipida kiritilgan belgi kodini qaytaradi va hech narsa kiritilmagan bo’lsa, -1
ni qaytaradi. Masalan:
int i = Console.Read();
Console.WriteLine(i) ;
Bu   dastur   kiritilgan   belgi   kodini   ekranga   chiqarib   beradi.
ReadLine   metodi.   ReadLine   metodi   kiritish   qurilmalaridan   matnning
satrini qabul qiladi (uning qiymati keyingi satrga o’tish belgisi bilan tugaydi ). U
string   tipidagi   qiymat   yoki   null   (agar   kiritish   amalga   oshmagan   bo’lsa)
qiymatini qaytaradi. Masalan:
string s = Console.ReadLine();
Console.WriteLine("Kiritilgan satr : " + s) ;
21 Write   va   WriteLine   metodlari.   Write   metodi   unga   yuborilgan
o’zgaruvchi qiymatini ekranga chiqarish vazifasini bajaradi. U string tipini qabul
qiladi.   U   barcha   bazali   tiplar   uchun   ishlaydi.   Shuning   uchun   uni   parametr
sifatida chaqirish mumkin.
Console.Write (I);
Console.Write (0.75<3) ;
Console.Write("Salom”);
Undagi   satrga   o’zgaruvchi   qiymatini   qo’shib   e‘lon   qilish   uchun   quyidagi
kodni yozish kifoya:
Console.Write("Salom, {0}", I);
Writeline   metodining   farqi   shundaki,   u   keyingi   (yangi)   satrdan   boshlab
o’ziga   yuborilgan   o’zgaruvchi   qiymatini   ekranga   chiqarib   beradi.
Endi   ushbu   metodlarga   misolni   kodini   to’liq   keltiramiz:
using System;
namespace _01_misol
{
class Program
{
static void Main(string[] args)
{
Console.Write(“1-misol”);
Console.ReadKey();
} 
} 
}
Bu dastur hozircha hech qanday ish bajarmaydi, u faqat ekranga 1-misol degan
yozuvni chiqaradi.
        C#   dasturlash   tilining   alfaviti   quyidagilardan   iborat.   Alfavit   (yoki
lite-rallar   yig’indisi)   C#   tilida   ASCII   kodlar   jadvali   bilan   birgalikda   quyidagi
belgilarni o’z ichiga oladi:
22 -  Lotin harflari;
-  0 dan 9 gacha raqamlar;
-  “_” belgisi (harf sifatida ham ishlatiladi);
-   maxsus   belgilar   to’plami   :   {},   1   []   +   -   %   /   \   ;   :   ^   ?   <>   =   !   &   #   ~   *;
-  boshqa belgilar.
C#   alfaviti   so’zlarni   tuzishda   xizmat   qiladi,   ya’ni   leksemalarni   tuzishda.
Leksemalarning 5 turi bor:
-  Identifikator
-  Kalit so’z
-  Amallar belgilari
-  Literallar
-  Ajratuvchilar
Deyarli   barcha   leksemalar   o’zining   tuzilishiga   ega.Ular   ko’p   alfavitlidir.
Kalit   so’zlar   va   nomlar.   Quyidagi   ro’yxatda   C#   tilining   kalit   so’zlari   va
nomlari berilgan bo’lib, dastur tuzilishi paytida ularni boshqa maqsadda ishlatish
(masalan   o’zgaruvchi   nomini   inisializatsiya   qilishda)   mumkin   emas.
Kalit so’zlar va nomlar.
Abstract  Do  in  protected  True
As  double  int  public  Try
Base  else  interface  readonly  typeof
Bool  enum  internal  ref  uint
Break  event  is  return  ulong
Byte  explicit  lock  sbyte  unchecked
Case  extern  long  sealed  unsafe
Catch  false  namespace  short  ushort
Char  finally  new  sizeof  using
Checked  fixed  null  stackalloc  virtual
Class  float  object  static  Void
Const  for  operator  string  volatile
Continue  foreach  out  struct  while
23 Decimal  goto  override  switch
Default  if  params  this
Delegate  implicit  private  throw
    C#   tilida   boshqa   tillarda   bo’lgani   kabi   dasturning   har   bir   qismiga   izoh
yozish   mumkin.   Bu   izohlar   dastur   kompilatsiyasida   ishtirok   etmaydi   va   dastur
ishiga   hech   qanday   ta’sir   ko’rsatmaydi.   C#   da   izoh   yozish   uchun   /*   */,   //
belgilaridan   foydalanish   mumkin.   //   belgisi   shu   belgidan   keyin   to   shu   satr
oxirigacha   bo’lgan   barcha   belgilarni   izoh   sifatida   qabul   qiladi.   /*   */   bu   orqali
istalgan qismni izohga olish mumkin.
Literallar.  C# tilida 5 xil literal mavjud ;
-  Butun tipli literal
-  Haqiqiy tipli literal
-  Belgili literal
-  Satr tipli literal
-  Mantiqiy tipli literal
Literallar   –   bu   tilning   maxsus   tushunchasidir.   Har   bir   literallar   to’plami
uchun alohida yozilish qoidasi mavjud. Masalan:
-  Butun tipli literallar: 5, 7, 8, -12, 234
-  Haqiqiy tipli literallar: 3.6, -56.8, 0.9
-  Belgili literallar: ‘a’, ‘b’, ‘?’,
-  Satr tipli literallar: “salom”, “aka”, “abcd”
-  Mantiqiy tipli literallar: true. False
C# tilida ma’lumotlar tiplari.
24         C#   tili   juda   tiplashgan   til   hisoblanadi.   Uni   ishlatish   paytida   har   bir
o’zgaruv-chi   obyektning   tipini   alohida   e‘lon   qilish   kerak   (masalan,   butun   son,
satr,   oyna,   tugma   va   h.z).   Xuddi   C++   va   Java   tillari   kabi   C#   tilida   ham   2   xil
ma’lumotlar   tipi   mavjud:   birinchi   aniqlangan   va   xotirada   til   tomonidan
avtomatik   joylashtirilgan,   ikkinchi   dasturchi   –   foydalanuvchi   tomonidan
kiritiladigan   va   aniqlanadigan.   C#   ning   ustun   tomoni   unda   ma’lumotlar   yana
ikki   turga   bo’linadi:   o’lchamli   va   yo’nalishli.   Ularning   asosiy   farqi
ma’lumotlarni  xotirada  joylashtirishidir.  O’l-chamli   tip  o’zining  aniq  qiymatini
stekka   yozib   qo’yadi,   yo’nalishli   tip   esa   bu   stekka   faqat   qaysidir   (o’zi
aniqlaydigan)   obyekt   manzilini   yozib   qo’yadi,   obyektning   o’zi   esa   kucha da
saqlanadi.   Kucha   –   bu  dastur   saqlanadigan   asosiy   xotira   bo’lib,  unga   murojaat
qilish dastur tezligini biroz pasaytiradi. Lekin agar siz juda katta obyektlar bilan
ishlayotgan   bo’lsangiz,   unda   bu   obyektni   kucha da   saqlashning   bir   muncha
afzallik tomonlari bor.
3.2  Loyihalar boshqaruv tizimini ishlab chiqish ga doir misollar
/*
  * Created by SharpDevelop.
  * User: User
  * Date: 19.12.2021
  * Time: 18:42
  *  
  * To change this template use Tools | Options | Coding | Edit Standard 
Headers.
  */
using  System;
namespace  misoll
{
        class   Program
25         {
                public   static   void   Main ( string [] args)
                {
                        int  tashkilot, id;
                        Console . WriteLine ( "     Obtektlar haqida ma'lumotlarini jamlovchi tizimiga 
xush kelibsiz!!!" );
                        Console . WriteLine ( "     Indenim obyektini tanlash uchun 1 ni bosing" );
                        Console . WriteLine ( "     Yubleyniy obyektini tanlash uchun 2 ni bosing" );
                        Console . WriteLine ( "     MultiMarket obyektini tanlash uchun 3 ni bosing" );
                        Console . Write ( "     Obyektni tanlang =" );
                        tashkilot= int . Parse ( Console . ReadLine ());
                       
                        switch (tashkilot){
                                        case   1 : {
                                                Console . Write ( "     Viloyatni kiriting=" );
                          id= int . Parse ( Console . ReadLine ());
                          switch (id){
                                          case   1 :  Console . WriteLine ( "     05.12.2018 qurilishga berildi 02.5.2019
qurilish tugallandi." ); break ;
                                          case   2 :  Console . WriteLine ( " 04.11.2017 qurilishga berildi 02.6.2018 
qurilish tugallandi." ); break ;
                                          case   3 :  Console . WriteLine ( "     09.5.2018 qurilishga berildi 11.5.2019 
qurilish tugallandi." ); break ;
                          } break ;
                                                                                }
                        case   2 : {
                                                Console . Write ( "     Viloyatni kiriting=" );
                          id= int . Parse ( Console . ReadLine ());
26                           switch (id){
                                          case   1 :  Console . WriteLine ( "     06.1.2019 qurilishga berildi 02.12.2020
qurilish tugallandi." ); break ;
                                          case   2 :  Console . WriteLine ( " 07.5.2017 qurilishga berildi 02.2.2018 
qurilish tugallandi." ); break ;
                                          case   3 :  Console . WriteLine ( "     12.5.2017 qurilishga berildi 11.3.2019 
qurilish tugallandi." ); break ;
                          } break
                                        }
                                        case   3 : {
                       
                        Console . Write ( "     Viloyatni kiriting=" );
                          id= int . Parse ( Console . ReadLine ());
                          switch (id){
                                          case   1 :  Console . WriteLine ( "     05.12.2014 qurilishga berildi 02.5.2016
qurilish tugallandi." ); break ;
                                          case   2 :  Console . WriteLine ( " 04.12.2017 qurilishga berildi 02.4.2019 
qurilish tugallandi." ); break ;
                                          case   3 :  Console . WriteLine ( "     09.6.2018 qurilishga berildi 11.7.2021 
qurilish tugallandi." ); break ;
                          } break ;
                                                                                }
                                        }
                                                Console . Write ( "Press any key to continue . . . " );
                        Console . ReadKey ( true );
                }
        }
}
27 IV. Xulosa
      Hozirgi   kunda   C#   dasturlash   tili   yuqori   bosqichli   dasturlash   tillari
ichida eng samarali dasturlash tillaridan hisoblanadi.   C# dasturlash tilida dastur
tuzish   uchun   Visual   Studio   .NET   muhitidan   foydalanamiz.   C#   dasturlash   tili
obektga   mo’ljallangan   dasturlash   tili   hisoblanadi.   BMIning   birinchi   bobida   C#
dasturlash   tili   va   uning   operatorlari   haqida   ma’lumotlar   keltirilgan.
Ma’lumotlarni kiritish va chiqarish turli xil oqimlar orqali amalga oshiriladi. Bu
bobda  konsol  rejimda  ma’lumotlarni  ekran  orqali   kiritish  va  chiqarish   amallari
ko’rib   chiqilgan.   Birinchi   bob   3   ta   bo’limdan   iborat.   Birinchi   bo’limda   C#
tilining   sintaksisi,   ma’lumotlar   tiplari   haqida   ma’lumotlar   keltirilgan.   Har   bir
operatorning   funksional   imkoniyatlari   misollar   orqali   tushuntirib   berilgan.
Ikkinchi bo’limda C# tilida ifoda, intruksiya va operatorlar haqida ma’lumotlar
keltirilgan.   Bu   bo’limda   tarmoqlash,   takrorlash   operatorlari   va   ularni   har   xil
variantlari   misollar   orqali   tushuntirib   berilgan.   Bundan   tashqari   har   bir
operatorning   funksional   imkoniyatlari   misollar   orqali   tushuntirib   berilgan.
Uchinchi   bo’limda   sinflar,   metodlar,   xususiyatlar   haqida   ma’lumotlar
keltirilgan. Bu bo’limda C# dasturlash tilida sinf qanday yaratiladi va obyektga
mo’ljallangan   dasturlash   tilining   asosiy   xususiyatlari   keltrilgan.   Har   bir
operatorning funksional  imkoniyatlari misollar orqali tushuntirib berilgan. Men
bu   kurs   ishimda   loyihalar   boshqaruv   tizimini   ishlab   chiqish   dasturini   ko’rib
chiqdim.   Bu   dastur   loyihalar   boshqaruv   tizimini   aniqlab   beradi.   Bu   dasturni
qurishda   men  asosan  switch   operatori  va  if   operatoridan  foydalandim.  Men   bu
dasturimdan yetarlicha ko’nikmaga ega bo’ldim.
28 Foydalanilgan adabiyotlar
1.     Трей   Неш .   C #   2008   усконренный   курс   для   профессионалов:     -
Москва: Санкт-Петербург, Киев, 2008г. -576с.
2.    Павел  Агуров.   C # Сборник  рецептов:     -Москва:   Санкт-Петербург,
2008г. - 432 с.
3.     Дейтел   Х,   Дейтел   П,   Листфилд   Дж.   C #   Наиболее   полное
руководство В Подлиннике: -Москва: Санкт-Петербург, 2006г. -1056 с.
4.     Лабор   В.   В.   Создание   приложений   для   Windows :     -Москва:
Харвест, 2003. - 384 с.
5.  Шилдт Герберт. Полный справочник по С#:-Москва: Издательский
дом "Вильяме", 2004г. -752 с. 
6.   Aripov M.M, Imomov T, Irmuhamedov Z.M va boshqalar. Informatika
va   axborot   texnologiyalari:     -Toshkent:   O’zbekiston,   1-qism.   2002y,   2-qism.
2003y, -168b.
7.     Aripov   M.M.   Informatika   va   hisoblash   texnikasi   asoslari:     -Tashkent:
O’zbekiston,2001y,-180b.
Qo’shimcha adabiyotlar.
         1. Shavkat  Miromonovich Mirziyoyev “Tanqidiy taxlil, qatiy talab 
intizom va shaxsiy javobgarlik- har bir rahbar faoliyatining kundalik qoidasi 
bo’lishi kerak. Asari  “O’zbekiston” 2017-yil  
2. Shavkat Mirziyoyev  “Erkin va farovon demokratik O’zbekiston davlatini 
birgalikda barpo etamiz” O’zbekiston Respublikasi Prezidenti lavozimiga kirish 
kirish tantanali marosimga bag’ishlangan Oliy Majlis palatalarining qo’shma 
majlisidagi nutqi.
3. Mirziyoyev, Shavkat Miromonovich. “2017 – 2021- yillarda O’zbekistonni 
rivojlantirishning beshta ustuvor yo’nalishi bo’yicha harakatlar strategiyasi 
to’g’risida”gi Farmoni. 2017-yil 2-fevral. 
29  Internet saytlari.
1.www.google.com.
2.www.ziyonet.uz.
3.www.referat.arxiv.uz.
4.www.vikipedia.org.
30

Loyihalarni boshqarish tizimini ishlab chiqish

Купить
  • Похожие документы

  • Axborot resurs markazi uchun avtomatlashtirilgan tizim kurs ishi
  • Talabalar bilimini baholovchi dastur yaratish
  • Access dasturi yordamida “dorixona” ma‘lumotlar bazasini yaratish
  • Agile va Scrum metodologiyalari dasturiy ta'minot ishlab chiqish
  • Tashkilot miqyosida masofadan muloqot qilish.

Подтвердить покупку

Да Нет

© Copyright 2019-2025. Created by Foreach.Soft

  • Инструкция по снятию с баланса
  • Контакты
  • Инструкция использования сайта
  • Инструкция загрузки документов
  • O'zbekcha