Jump to content
IT-პროგრამირების ფორუმი

m3sk4lit0

მოდერატორი
  • Content count

    278
  • Joined

  • Last visited

  • Days Won

    46

m3sk4lit0 last won the day on February 26 2016

m3sk4lit0 had the most liked content!

Community Reputation

137 ნორმალური

About m3sk4lit0

  • Rank
    წევრი

Recent Profile Visitors

1.754 profile views
  1. @GHOST_FATHER რა გვიან გქონდა რეაქცია
  2. არის კიდევ სპეციალური ბარათები ადმინისტრაციისთვის და ალბათ რაღაცნაირად დაითრია, სპეციალურ ბარათებს სხვადასხვა პრივილეგიები აქვთ. ან სისტემა გატეხა, რაც ნაკლებად სავარაუდოა
  3. პირველი დადებიდან საათნახევარი უფასოთ შეგიძლია გაიარო ტურნიკეტი, ოღონდ დაახლოებით 15 წუთიანი შუალედებით. თუ სწორად მახსოვს.
  4. საქართველოში http://dac.ge/ და https://www.facebook.com/groups/arduino.ge/ გამოწერა თუ გინდა http://www.ebay.com/
  5. რუსული/ინგლისური ტექსტი შეგიძლია წაიკითხო და გაიგო რა წერია ?
  6. [C#] კითხვები / დახმარებები

    მოკლედ button1-ზე დაკლიკებისას პროგრამა კითხულობს txt ფაილიდან სახელად LogsList.txt აკეთებს თავის საქმეს და პასუხს წერს textBox1-ში using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Text; using System.Windows.Forms; using System.Globalization; using System.IO; namespace WindowsFormsApplication2 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } class lst { public int index { get; set; } public DateTime timestamp { get; set; } public lst() { } public lst(int index, string timestamp) { this.index = index; this.timestamp = DateTime.ParseExact(timestamp.Remove(19), "yyyy-MM-dd HH:mm:ss", DateTimeFormatInfo.InvariantInfo); } } private void button1_Click(object sender, EventArgs e) { try { List<string> lines = new List<string>(); StreamReader reader = new StreamReader("LogsList.txt"); int j = 0; while (reader.Peek() >= 0) lines.Add(reader.ReadLine()); List<lst> LogsList = new List<lst>(); foreach (String s in lines) { new lst(Convert.ToInt32(s.Remove(1)), s.Remove(0, 2)); LogsList.Add(new lst(Convert.ToInt32(s.Remove(1)), s.Remove(0, 2))); } DateTime sum = DateTime.Now; DateTime temp_sum = sum; DateTime start_time; string stm = Convert.ToString(LogsList[0].timestamp).ToString(); string etm = Convert.ToString(LogsList[0].timestamp).ToString(); stm.Remove(11); etm.Remove(11); start_time = DateTime.ParseExact(stm.Remove(11) + "09:00:00", "dd.MM.yyyy HH:mm:ss", DateTimeFormatInfo.InvariantInfo); DateTime end_time; end_time = DateTime.ParseExact(etm.Remove(11) + "18:00:00", "dd.MM.yyyy HH:mm:ss", DateTimeFormatInfo.InvariantInfo); int index3 = 0;//შეცდომა int index4 = 0;//მოგვარება bool end = false;//გავიდა სიის ბოლოში bool ok = false;//ok გახდება true როცა შეცდომის შემდეგ ვიპოვნით გამოსწორებას გა გამოვაკლბთ დროებს for (int i = 0; i < LogsList.Count; i++)//ვამოწმებთ მთლიან ლისტს { if (LogsList[i].timestamp.Hour >= 9 && LogsList[i].timestamp.Hour <= 18)// 9.00 და 18.00 პირობითად დროის შუალედია { if (LogsList[i].index == 3 && !(LogsList[i].timestamp.Hour >= 18 && (LogsList[i].timestamp.Minute > 0 || LogsList[i].timestamp.Second > 0))) { index3 = i;//შევინახოთ პირველი შეცდომის დროის ინდექსი i++; ok = false; while (LogsList[i].index != 4)//ვეძებთ გამოსწორების ინდექსს { i++;//ვზრდით i-ს სანამ mylist[i].index != 4, ანუ გამოსწორებას არ დავიჭერთ. if (i == LogsList.Count)//i რომ არ გაგვექცეს { end = true; break; } } if (end) { //ესეიგი თუ ძებნა დაამთავრა და მოგვარება ვერ ნახა 18.00 გამოაკლებს დამახსოვრებულ შეცდომის დროს if (!ok) sum += end_time - LogsList[index3].timestamp; break; } index4 = i;//დავიჭირეთ გამოსწორების ინდექსი if (!(LogsList[i].timestamp.Hour >= 18 && (LogsList[i].timestamp.Minute > 0 || LogsList[i].timestamp.Second > 0)))//ვნახოთ ამასობაში მოგვარების დრო 18.00 ხომ არ გადაცდა { sum += (LogsList[index4].timestamp - LogsList[index3].timestamp);//ავჯამავთ შეცდომასა და გამოსწორებას შორის დროს } else//თუ გადაცდა 18.00 { //ესეიგი თუ მოგვარება ნახა მაგრამ 18.00 მერე, მაშინ 18.00-ს გამოაკლებს დამახსოვრებულ შეცდომის დროს end_time = DateTime.ParseExact(Convert.ToString(LogsList[index3].timestamp).Remove(11) + "18:00:00", "dd.MM.yyyy HH:mm:ss", DateTimeFormatInfo.InvariantInfo); sum += end_time - LogsList[index3].timestamp; //break; } } //i იზრდება for ციკლში მანამ სანამ არ შესრულდება პირობა mylist[i].index == 3 if (end)//i გავიდა სიის ბოლოში და ვწყვეტთ { break; } } } textBox1.Text = (sum - temp_sum).ToString(); } catch(Exception ex) { MessageBox.Show(ex.Message); } } } } ფაილში ჩაკოპორებულია შენი გამოგზავნილი მონაცემები ასე:
  7. [C#] კითხვები / დახმარებები

    class lst { // Auto-implemented properties. public int index { get; set; } public double time { get; set; } } private void button1_Click(object sender, EventArgs e) { lst lst = new lst(); List<lst> mylist = new List<lst> { new lst(){ index = 3, time=5.01 }, new lst(){ index = 3, time=5.08 }, new lst(){ index = 4, time=6.04 }, new lst(){ index = 3, time=8.10 }, new lst(){ index = 3, time=9.01 }, new lst(){ index = 3, time=10.08 }, new lst(){ index = 4, time=12.04 }, new lst(){ index = 3, time=15.30 }, new lst(){ index = 4, time=17.20 }, new lst(){ index = 3, time=17.40 }, new lst(){ index = 3, time=17.50 }, new lst(){ index = 3, time=18.08 }, new lst(){ index = 4, time=19.04 }, new lst(){ index = 3, time=20.25 }, new lst(){ index = 3, time=22.20 } }; double sum=0; int index3 = 0; int index4 = 0; bool end = false; bool ok = false;//ok გახდება true როცა შეცდომის შემდეგ ვიპოვნით გამოსწორებას გა გამოვაკლბთ დროებს for (int i = 0; i < mylist.Count; i++)//ვამოწმებთ მთლიან ლისტს { if (mylist[i].time >= 9.00 && mylist[i].time <= 18.00)// 9.00 და 18.00 პირობითად დროის შუალედია { if (mylist[i].index == 3) { index3 = i;//შევინახოთ პირველი შეცდომის დროის ინდექსი i++; ok = false; while(mylist[i].index != 4)//ვეძებთ გამოსწორების ინდექსს { i++;//ვზრდით i-ს სანამ mylist[i].index != 4, ანუ გამოსწორებას არ დავიჭერთ. if(i==mylist.Count)//i რომ არ გაგვექცეს { end = true; break; } } if (end) { //ესეიგი თუ ძებნა დაამთავრა და მოგვარება ვერ ნახა 18.00 გამოაკლებს დამახსოვრებულ შეცდომის დროს if (!ok) sum += 18 - mylist[index3].time; break; } index4 = i;//დავიჭირეთ გამოსწორების ინდექსი if (mylist[index4].time <= 18.00)//ვნახოთ ამასობაში მოგვარების დრო 18.00 ხომ არ გადაცდა { sum += (mylist[index4].time - mylist[index3].time);//ავჯამავთ შეცდომასა და გამოსწორებას შორის დროს } else//თუ გადაცდა ვწყვეტთ ვიკლს { //ესეიგი თუ მოგვარება ნახა მაგრამ 18.00 მერე, მაშინ 18.00-ს გამოაკლებს დამახსოვრებულ შეცდომის დროს sum += 18 - mylist[index3].time; break; } } //i იზრდება for ციკლში მანამ სანამ არ შესრულდება პირობა mylist[i].index == 3 if(end)//i გავიდა სიის ბოლოში და ვწყვეტთ { break; } } } textBox1.Text = Math.Round(sum, 2).ToString(); } ფორმაზე გაქვს button1 და textBox1. დააკლიკებ ღილაკს და გამოიანს 5,53. ესეიგი, მაქვს ლისტი სადაც თითოეულ ობიექტს გააჩნია index და უდრის 3-ს ან 4-ს, ანუ შეცდომა და გამოსწორება. და მაქვს time სადაც შენახულია შეცდომის და გამოსწორების დროები(9.01 არის იგივე 9 საათი და 1 წუთი). პროგრამა ეძებს შუალედში 9.00 - 18.00 . შეცდომის დროის პოვნისას იმახსოვრებს მის მნიშვნელობას და ეძებს უახლოეს გამოსწორების დროს და აჯამავს მათ შორის სხვაობას. თუ შეცდომის შემდეგ გამოსწორების დრო გადაცდა 18.00-ს, მაშინ ჩათვლის გამოსწორებად 18.00-ს და 18.00-ს გამოაკლებს ბოლოს დამახსოვრებულ შეცდომის დროს. ამით რჩება მუშაობას. თუ რამე გინდა დავამატოთ კიდევ
  8. [C#] კითხვები / დახმარებები

    თუ RS232 გაქვს მაშინ სტანდარტული UART კომუნიკაცია გაქვს და C#-ში შეგიძლია გამოიყენო ობიექტი serialPort. data bits და stop bits კონფიგურაცია დაგჭირდება აპარატის მიხედვით. არ გაქვს მეტი ინფორმაცია ? დატაშიტი? ან მთვლელის მოდელი იცი?
  9. [C#] კითხვები / დახმარებები

    კომპზე რომ აერთებ მთვლელს დევაის მენეჯერში ჩანს მთვლელი ? ანუ დრაივერი გაქვს ?
  10. მოკლედ რა აღარ ვცადე..მაგრამ კოდი არაფერ შუაშია. Access host-ში წვდომა მივანიჭე ყველა IP-ს, ვცადე კიდევ Navicat Premium მაგრამ ვერ დავუკავშირდი. უცხოურ ჰოსტინგს ვიყიდი და ეგ იქნება რა.
  11. proserv.ge არ მაძლევს წვდომის უფლებას როგორც მივხვდი. godaddy.com ვნახე მაგრამ ძვირია, 4$ ყოველთვე ბევრია, არადა უწერია Remote access მხარდაჭერა აქვსო.
  12. ხოო firewall-ის გათიშვაც ვცადე მაგრამ არაფერი ქნა. სვარაუდოდ წვდომას თვითონ proserv.ge მიზღუდავს. სხვა იდეა აღარ მრჩება/
  13. 3306 პორტი აქვს proserv.ge_ს და 3306 არის mysql default port, ანუ მითითება არ უნდა, თუმცა მივუთითე კიდეც მარა შედეგი არ მომცა.
×