Category Archives: დაპროგრამება

რა არის ცვლადი, vol.2


ცვლადი შეიძლება წარმოიდგინოთ როგორც ყუთი კომპიუტერის მეხსიერებაში. ამ ყუთში შეიძლება შევინახოთ რაღაც ინფორმაცია (ანუ ცვლადის მნიშვნელობა – value). ეს შეიძლება იყოს რაიმე გამოთვლის შედეგი, ან ვინმეს სახელი, ასაკი ან ნებისმიერი სხვა მონაცემი.

ეს ხდება იმ მიზნით, რომ შენახული ინფორმაცია გამოვიყენოთ მოგვიანებით რაიმე გამოთვლაში, ან ეკრანზე გამოტანისთვის.

ცვლადების მინიჭება

ცვლადში ინფორმაციის შენახვისთვის გამოიყენება ე.წ. “მინიჭების განცხადება” (ინგ. assignment statement). განაცხადი შედგება შემდეგისგან: ა) ცვლადის სახელი; ბ) მინიჭების ოპერატორის (ხშირად ტოლობის ნიშანი ‘ = ’ ); და გ) შესანახი სიდიდე. თუ შეგყავს მინიჭების განცხადება spam = 42, შეიქმნება ცვლადი spam და მასში შეინახება რიცხვი 42.

წარმოიდგინე რომ ცვლადი არის წარწერიანი ყუთი, რომელშიც “ჩაიდება” სიდიდე 42.

ნახ. 1. Spam = 42 იგივეა, რაც პროგრამას ვუთხრათ: “შექმენი ცვლადი spam და მასში შემინახე მთელი რიცხვი 42.”
ნახ. 1. Spam = 42 იგივეა, რაც პროგრამას ვუთხრათ:
“შექმენი ცვლადი spam და მასში შემინახე მთელი რიცხვი 42.”

Continue reading რა არის ცვლადი, vol.2

გავმართოთ GitHub ლინუქსზე openSuse


უიმე, ერთი თვეა არაფერი დამიწერია! სამაგიეროდ ეს 100-ე ჩანაწერია ჩემს საყვარელ, ხანდახან მიტოვებულ ბლოგზე. ამიტომ, დღეს რაღაც გემრიელს დავწერ.

Octocatმინდა გითხრათ, რომ მე მიყვარს github.com! არც თუ ძალიან დიდი ხანია ვიყენებ git-ს როგორც ვერსიათა მართვის სისტემას ჩემი სამსახურის პროექტებისთვის და ქმაყოფილი ვარ. გიტჰაბზე გამოწერილი მაქვს $7 პაკეტი, რომელშიც შედის შეუზღუდავი რაოდენობა ღია წყაროს რეპოზიტორიებისა და 5 პირადი საცავი. that pleases me greatly.

შემიძლია ვიმუშაო სახლიდან, სამსახურიდან, ლეპტოპიდან. და არ მიწევს ვინერვიულო, რომელ ფლეშკაზე და საერთოდ სად მაქვს პროექტის საბოლოო ვერსია. ყველაფერი ცენტრალიზებულ საცავშია 🙂 პაროლს არ გეტყვით, ნუ მაიმუნობთ

Continue reading გავმართოთ GitHub ლინუქსზე openSuse

F90: მუდმივები ფორტრანში


sმუდმივები, ან  ზუსტი/სიტყვასიტყვითი მუდმივები არის ჩანაწერები, რომლებიც განსაზღვრავენ გარკვეული ტიპის სიდიდეს. ფორტანში არის მათი ხუთი სახეობა: მთელრიცხვითი, ნამდვილი, კომპლექსური, ლოგიკური და სიმბოლოთა სტრიქონი.

მთელრიცხვითი მუდმივები: ციფრების მიმდევრობა ნიშნით ან ნიშნის გარეშე:

მართებული მაგალითები: 0, -345, 768, +12345
უმართებულო მაგალითები:
1,234 : მძიმე დაუშვებელია
12.0: ათწილადის ნიშანი დაუშვებელია
--4 and ++3: ნიშნების რაოდენობა მეტისმეტად დიდია
5- and 7+: ნიშანი უნდა იყოს ჩაწერილი რიცხვით მნიშნელობამდე

ნამდვილი რიცხვები: შესაძლოა ორნაირი წარმოდგენა – ათწილადის სახით და ექსპონენციალურად:
ჩაწერა ათწილადის სახით: საჭიროა რიცხვში იყოს ათწილადის ნიშანი, მაგრამ მძიმეები არ მიიღება. ნამდვილ რიცხვს შეიძლება ჰქონდეს ან არ ჰქონდეს ნიშანი.

მართებული მაგალითები: 23.45, .123, 123., -0.12, -.12
უმართებულო მაგალითები:
12,345.95: მძიმე დაუშვებელია
75: ნამდვილ რიცხვში უნდა მოიძებნებოდეს ათწილადის ნიშანი
123.5-: ნიშანი უნდა იყოს ჩაწერილი რიცხვით მნიშნელობამდე
$12.34: არ შეიძლება დოლარის სიმბოლოს $ გამოყენება

ჩაწერა ექსპონენციალური სახით: შედგება მთელი ან ნამდვილი რიცხვისგან ათწილადური სახით წარდგენილი, რომლის შემდეგ წერია სიმბოლო E ან e და მთელი რიცხვი(ექსპონენტა).

მართებული მაგალითები:
12.3456E2 ან 12.3456e2: ეს ტოლია 1234.56
-3.14E1 ან -3.14e1: ეს ტოლია -31.4
-1.2E-3 ან -1.2e-3: ეს ტოლია -0.0012
12E3 ან 12e3: ეს ტოლია 12000.0
0E0 ან 0e0: ეს ტოლია 0.0
უმართებულო მაგალითები:
12.34E1.2: ექსპონენტა უნდა იყოს მთელი რიცხვი
12.34-5: დაკარგულია ექსპონენტას ნიშანი E ან e

კომპლექსური: ამჯერად არ განიხილება 😦
ლოგიკური: ცვლადები, რომლებიც იღებენ ორიდან ერთ მნიშვნელობას: ჭეშმარიტი ან მცდარი (True ან False შესაბამისად)
სიმბოლოთა სტრიქონი: ასეთი სტრიქონები უნდა მოთავსებული ორ ორმაგ ბრჭყალ ან აპოსტროფს შუა(ცალი ბრჭყალები) – “striqoni” ან ‘striqoni’ შესაბამისად

სტრიქონის შიგთავსი შედგება ყველა მასში მყოფ სიმბოლოსგან ჰარების ჩათვლით. სტრიქონის სიგრძედ ითვლება მასში ჩაწერილი სიმბოლოების რაოდენობა. თუ სტრიქონის სიგრძე ნულის ტოლია, ეს სტრიქონი ცარიელია.

მართებული მაგალითები:
'John' და "John": ტექსტი = John, ხოლო სიგრძე = 4
' ' და " ": ტექსტი = ცალი ჰარი, ხოლო სიგრძე = 1
'John Dow #2' და "John Dow #2": ტექსტი = John Dow #2, ხოლო სიგრძე = 11
'' და "": ტექსტი = არანაირი, ხოლო სიგრძე = 0 (ცარიელი სტრიქონი)
უმართებულო მაგალითები:
'you and me: მეორე(ჩამკეტი) ერთმაგი ბრჭყალი დაკარგულია
Hello, world': პირველი(გამღები) ერთმაგი ბრჭყალი დაკარგულია
'Hi" და "Hi': პირველი და მეორე ბრჭყალები სხვადასხვა სახის არის.

თუ საჭიროა სტრიქონში ჩაწერილი იყოს ერთმაგი ბრჭყალი, სტრიქონის სასაზღვრო ბრჭყალებად უნდა იყოს გამოყენებული [i]ორმაგი ბრჭყალები[/i]:

"Tamo's apple"    !  ამ სტრიქონის ტექსტია Tamo's apple, ხოლო სიგრძე 12. 

ასევე, ერთმაგი ბრჭყალის ჩასმა შემდეგნაირად არის შესაძლებელი:

'Tamo''s apple'

ამწყობი განიხილავს სტრიქონში მყოფ ორ ერთმაგ ბრჭყალს როგორც ტექსტის ნაწილს – ერთმაგ ბრჭყალს. ამიტომ ზემოთხსენებული სტრიქონის ტექსტი მაინც არის Lori’s apple.

მართებული მაგალითებიs:
'What''s this?': ტექსტი = What's this?, ხოლო სიგრძე = 11
'''''': ტექსტი = '', ხოლო სიგრძე = 2
უმართებულო მაგალითები:
'Vakho's seminar': ერთმაგი ბრჭყალი სიმბოლო o და s-ს შორის ორჯერ უნდა ეწეროს.

F90: ფორტრანის ანბანი


ფორტრანში გამოიყენება მხოლოდ შემდეგი სიმბოლოები:

ასოები:

        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
        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

ციფრები:

        0 1 2 3 4 5 6 7 8 9

განსაკუთრებული სიმბოლოები:

       ჰარი( space)
' " ( ) * + - / : = _
        ! & $ ; < > % ? , .

მგონი ეს ყველაზე მოკლე ჩანაწერია, რაც კი ოდესმე გამიკეთებია, მაგრამ საქმე საჭიეობს 😉 მალე მეტი იქნება!

F90: შესავალი ფორტრანში


პროგრამის სტრუქტურა:ზოგადად, პროგრამას უნდა ჰქონდეს შემდეგი სტრუქტურა:

PROGRAM programis-saxeli
IMPLICIT NONE

[გამოცხადების ნაწილი]
[შესრულების ნაწილი]
[ქვეპროგრამების ნაწილი]

END PROGRAM programis-saxeli

დამატებითი ცნობები: ფრჩხილებში მყოფი [ ] ჩანაწერები არააუცილებელია, ისინი უბრალოდ განიშნებენ პროგრამის ნაწილებზე. ჩანაწერი IMPLICIT NONE აუცილებელია. პროგრამა იწყება საკვანძო სიტყვით PROGRAM,

  • რომლის შემდეგ იწერება პროგრამის სახელი,
  • შემდეგ – ჩანაწერი IMPLICIT NONE,
  • შემდეგ – ცვლადების და პარამეტრების გამოცხადების ჩანაწერები,
  • შემდეგ – შესასრულებელი ნაწილი,
  • შემდეგ – შიდა ქვეპროგრამების განყოფილება,
  • ბოლოში – საკვანძო სიტყვა END PROGRAM და პროგრამის სახელი.

კოდის წაკითხვადობის გასაუმჯობესებლად გამოიყენება კომენტარები.

Continue reading F90: შესავალი ფორტრანში

FORTRAN90: მოქმედებები ვექტორებზე


ნუ, ვ ობშემ ამ ბოლო დროს ფორტრანს ვსწავლობ, როგორც იცით…

დავწერე პატარა სავარჯიშო მოდული, რომელიც შეიცავს სტრუქტურა ვექტორს და მასზე/მათზე განსაზღვრულ ფუნქციათა უმეტესობას: ვექტორულ, სკალარულ, შერეულ ნამრავლს, სიგრძეს(მოდულს), მიმატება-გამოკლებას, გამრავლებას ნამდვილ რიცხვზე…

მოცემული მოდულის გარჩევით ადამიანი გაეცნობა მოდულთა დაწერას, ფუქნციების განსაზღვრას, ოპერატორებისა და ფუნქციების გადატვირთვას… ზედაპირულ დონეზე, რა თქმა უნდა 🙂

ასევე, რადგან ფორტრანში არ არის წინასწარ განსაზღვრული მუდმივა პი რიცხვისთვის, ჩვენ დინამიურად ვიღებთ მას დიდი სიზუსტით ტრიგონომეტრიული ფუნქციების მეშვეობით…

კიდევ ერთხელ: ეს არის მხოლოდ და მხოლოდ სავარჯიშო. ნუ ეძებთ მასში სრუყოფილებას ან იდეალს… 🙂