Пример #1
0
        public short previousTemp()
        {
            int  day     = (int)(DateTime.Now.DayOfWeek);
            byte hour    = (byte)(DateTime.Now.Hour);
            byte minute  = (byte)(DateTime.Now.Minute);
            int  zuletzt = 0;

            for (int i = 0; i < nutzdataRoom.Count; i++)
            {
                roomData rd = nutzdataRoom[i];
                if ((int)rd.Wochentag < day)
                {
                    // tue nichts
                }
                else if ((int)rd.Wochentag == day)
                {
                    {
                        if (rd.Stunde <= hour)
                        {
                            if (rd.Minute <= minute)
                            {
                                zuletzt = i;
                            }
                            else
                            {
                                break;
                            }
                        }
                        else
                        {
                            break;
                        }
                    }
                }
                else
                {
                    break;
                }
            }

            return(nutzdataRoom[zuletzt].Temperatur);
        }
Пример #2
0
        public void sort()
        {
            List <roomData> newdataRoom     = new List <roomData>();
            List <roomData> newnutzdataroom = new List <roomData>();
            int             dataroomlength  = dataRoom.Count;
            int             nutzroomlength  = nutzdataRoom.Count;
            roomData        newest          = null;
            roomData        next            = null;

            for (int i = 0; i < dataroomlength; i++)
            {
                for (int j = 0; j < dataRoom.Count; j++)
                {
                    if (j == 0)
                    {
                        newest = dataRoom[j];
                    }
                    else
                    {
                        next = dataRoom[j];
                        if ((int)(newest.Wochentag) > (int)(next.Wochentag)) // Wenn der naechste wert ein Tag vorher ist: also Montag < Dienstag < .... < Sonntag
                        {
                            newest = next;
                        }
                        else if ((int)(newest.Wochentag) < (int)(next.Wochentag))
                        {
                            //newest ist ein tag frueher als der naechste angeschaute wert. also tue nix
                        }
                        else //wenn es der selbe tag ist
                        {
                            //s
                            if ((int)(newest.Stunde) > (int)(next.Stunde))
                            {
                                newest = next;
                            }
                            else if ((int)(newest.Stunde) < (int)(next.Stunde))
                            {
                                //newest ist ein tag frueher als der naechste angeschaute wert. also tue nix
                            }
                            else //wenn es der selbe tag ist
                            {
                                if ((int)(newest.Minute) > (int)(next.Minute))
                                {
                                    newest = next;
                                }
                                else if ((int)(newest.Minute) < (int)(next.Minute))
                                {
                                    //newest ist ein tag frueher als der naechste angeschaute wert. also tue nix
                                }
                                else //wenn es der selbe tag, stunde, minute
                                {
                                    // der fall sollte nicht eintreten
                                }
                            }
                        }
                    }
                }
                newdataRoom.Add(newest);
                dataRoom.Remove(newest);
            }

            for (int i = 0; i < nutzroomlength; i++)
            {
                for (int j = 0; j < nutzdataRoom.Count; j++)
                {
                    if (j == 0)
                    {
                        newest = nutzdataRoom[j];
                    }
                    else
                    {
                        next = nutzdataRoom[j];
                        if ((int)(newest.Wochentag) > (int)(next.Wochentag)) // Wenn der naechste wert ein Tag vorher ist: also Montag < Dienstag < .... < Sonntag
                        {
                            newest = next;
                        }
                        else if ((int)(newest.Wochentag) < (int)(next.Wochentag))
                        {
                            //newest ist ein tag frueher als der naechste angeschaute wert. also tue nix
                        }
                        else //wenn es der selbe tag ist
                        {
                            //s
                            if ((int)(newest.Stunde) > (int)(next.Stunde))
                            {
                                newest = next;
                            }
                            else if ((int)(newest.Stunde) < (int)(next.Stunde))
                            {
                                //newest ist ein tag frueher als der naechste angeschaute wert. also tue nix
                            }
                            else //wenn es der selbe tag ist
                            {
                                if ((int)(newest.Minute) > (int)(next.Minute))
                                {
                                    newest = next;
                                }
                                else if ((int)(newest.Minute) < (int)(next.Minute))
                                {
                                    //newest ist ein tag frueher als der naechste angeschaute wert. also tue nix
                                }
                                else //wenn es der selbe tag, stunde, minute
                                {
                                    // der fall sollte nicht eintreten
                                }
                            }
                        }
                    }
                }
                newnutzdataroom.Add(newest);
                nutzdataRoom.Remove(newest);
            }

            dataRoom     = newdataRoom;
            nutzdataRoom = newnutzdataroom;



            //room.dataRoom.Sort((x, y) => ((int)(x.Wochentag)).CompareTo(((int)(y.Wochentag))));
            //room.dataRoom.Sort((x, y) => x.calculateTime().CompareTo(y.calculateTime()));
            //room.nutzdataRoom.Sort((x, y) => ((int)x.Wochentag).CompareTo((int)y.Wochentag));
            //room.nutzdataRoom.Sort((x, y) => x.calculateTime().CompareTo(y.calculateTime()));
        }