Advertisement
Tavxela

Untitled

Dec 20th, 2019
231
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.11 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>//<-- setw-ს გამოსაყენებლად უნდა ჩართოთ ეს header-ი (ახსნილია შემდგომ რას და როგორ აკეთებს!!!)
  3. //setw --> set field width
  4. #include <fstream>
  5. #include <vector>
  6.  
  7. using namespace std;
  8.  
  9. void sheavseVectori(vector<int>& vec) {//sheavseVectori(პარამეტრად უნდა გადავაწოდოთ ვექტორი (თუ გვინდა რომ ორიგინალი შეიცვალოს მაშინ ვიყენებთ რეფერენსს(&)));
  10. int b,input;//<-- აქ ორ ცვლადს ვქმნით
  11. cout << "Ramxela ginda rom iyos vectori: ";
  12. cin >> b;//<-- აქ შემომაქვს კლავიატურიდან b
  13. for (int i = 0; i < b; i++) {/*<-- აქ სანამ i ნაკლებია b-ზე მანამდე იქნება ციკლი(ანუ b განსაზღვრავს ვექტორის სიდიდეს)
  14. იგივე იქნებოდა პირდაპირ რიცხვი რომ დაგეწერათ*/
  15. cout << "Enter int:";
  16. cin >> input;//<-- აქ აწ უკვე შექმნილ input-ს(თქვენივე სახელი დაარქვით!!!) ვუცვლით მნიშვნელობას
  17. vec.push_back(input);//<-- აქ ჩვენს მიერ შეტანილ input-ს ვწერთ ვექტორში
  18.  
  19. }/*არ შეგეშალოთ და გაითვალისწინეთ,რომ რადგან ჩვენ პარამეტრებში გამოვიყენეთ რეფერენსი ეს ნიშნავს იმას,რომ ეს ფუნქცია ორიგინალ
  20. ვექტორთან იმუშავებს და არა მის მსგავსთან(კოპიოსთან) sheavseVectori(აქ იწერება პარამეტრები) & <-- ეს არის რეფერენსის ნიშანი!!!*/
  21. }
  22.  
  23. bool/*<-- ეს ნიშნავს იმას,რომ ფუნქციაში return <-- აი ეს იქნება bool ტიპის*/arisluwi(int a) {/*რადგან გვკითხეს,რომ დაადგინეთ არის თუ არა რიცხვი ლუწი,
  24. ანუ ჩვენ უნდა შევქმნათ "ფუნქცია პრედიკატი" იგივე
  25. bool ფუნქცია რომელსაც გადავაწვდით მთელ რიცხვს(int-ს)*/
  26. return a % 2 == 0;/*<-- ეს იგივეა რაც if-ით რომ დაგწერათ
  27. თქვენივე სურვილისამებრ დაწერეთ. return-ის
  28. შემდგომ დაწერილი ნიშნავს --> a გაყოფილი 2 -ზე , ნაშთი თუ უდრის 0-ს მაშინ დააბრუნე ჭეშმარიტია(true) თუ არადა მცდარია(false)*/
  29. }
  30. /*ჩვენ უკვე შევქმენით ორი ფუნქცია ახლა გადავიდეთ შემდეგ ეტაპზე(გამოვიყენოთ ჩვენივე შექმნილი ფუნქციები
  31. ძირითად ფუნქციაში (int main-ს ეწოდება ძირითადი/მთავარი ფუნქცია!!!))*/
  32.  
  33. int main() {
  34. vector<int> vec;/*<-- აქ შევქმენით ვექტორი (გავაკეთეთ განაცხადი ვექტორზე) რომელიც int(მთელი რიცვის) ტიპისაა*/
  35. sheavseVectori(vec);/*<-- აქ გამივიძახეთ(გამოვიყენეთ) შესაბამისი ფუნქცია,რომელიც შეგვივსებს ვექტორს(ორიგინალს!!!)*/
  36.  
  37. for (int i = 0; i < vec.size(); i++) {/*<-- აქ სანამ i ნაკლებია ვექტორის ზომაზე(ვექტორის სახელი.size()<-- ასე იწერება მისი ზომა)
  38. მანამდე გაგვიკეთებს იმას რაც for-ის ტანში წერია. ამას ეწოდება ტანი (ფიგურულ ფრჩხილებს!!!)--> {}*/
  39. cout << setw(10) << vec[i];/*<-- აქ setw(რამხელაზე გვინდა,რომ დავაშოროთ) დაახლოებით იგივე შედეგს მოგვცემს
  40. ტაბულაციით გამოტოვება '\t'<-- ეს მარცხენა კიდესთან ასწორებს კონსოლში
  41. setw კი მარჯვენა (იმისათვის რომ ამას მიხვდეთ გაუშვით პროგრამა,ჯერ setw-თი მერე ტაბულაციით)*/
  42. if ((i + 1) % 5 == 0) {/*<-- აქ როდესაც i+1 გაიყოფა უნაშთოდ 5-ზე მაშინ შევა ტანში(ტანი ზემოთ არის განმარტებული!!!)*/
  43. cout << endl;/*<-- აქ ვასრულებთ ხაზს (ანუ გადავდივართ ახალ ხაზზე) კონსოლში(იგივე შავ ყუთში)*/
  44. }
  45. }
  46.  
  47. int max = vec[0];//<-- აქ ვქმნით ახალ ცვლადს რომეშიც ვინახავს ვექტორის პირველ ელემენტს(გაითვალისწინეთ,რომ ვექტორში 0-დან იწყება)
  48. for (int i = 0; i < vec.size(); i++) {//<-- თუ არ იცი რას შვრება 36-ე ხაზზე დაბრუნდი!!!
  49. if (max < vec[i]) {/*<-- აქ ჩვენ მიერ შექმნილ ცვლადს ვადარებთ ვექტორის ელემენტებს, თუ ეს ცვლადია ნაკლებია მოცემული
  50. ვექტორის ელემენტზე მაგ. vec[5] ანუ რიგით მეექვსე ელემენტზე მაშინ შევა if-ის ტანში(თუ არ იცი რას ეწოდება ტანი დაბრუნდი 37-ე ხაზზე!!!)*/
  51. max = vec[i];/*თუ ზემოთ მოცემული პირობა ჭეშმარიტია max-ს მიენიჭება ვექტორის ის ელემენტი რომელმაც პირობა დააკმაყოფილა
  52. მაგ. vec[5] -ი*/
  53. }
  54. }
  55. ofstream fafa("pasuxi.txt");/*<-- აქ ვქმნით output file stream (ანუ პროგრამიდან ფაილში გამტანი!!!) ეს მიებმება ფაილს სახელად
  56. pasuxi.txt*/
  57. fafa << max;/*<-- აი აქ გაგვაქვს ფაილში ჩვენი სასურველი ცვლადი. ამ შემთხვევაშ მაქსიმუმი!!!*/
  58. }/*წარმატებები გამოცდებზე და საკონტროლოებზე და იმედია დაგეხმარეთ :) */
  59. /*P.S არ დაგავიწყდეთ setw(აი აქ)<-- ამ ფრჩხილებში იწერება რამდენი გინდათ დაშორება!!!!*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement