Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von Campac68
Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

ne kein fehler dauert nur ewig:

lösung kam bei mir nach 6 1/2 minuten(2.5GHz) kann es sein das du es im Debug Modus ausgeführt hast? Das verlangsamt das ganze etwa um das doppelte^^

Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

jo stimmt mal schauen

EDIT: Ich würde ehrlich gesagt behaupten das mein Code einfach nur relativ lahm ist. Ich hab nicht so auf Performance geachtet...

Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

Meine Lösung für die Soduku Aufgabe. Ich hoffe sie ist ungefähr dem genehm was du wolltest. Ich hab sie mit drei verschiedenen Sudokus verschiedener Schwierigkeitsgrade getestet und sie lieferte immer (ein) richtiges bzw das richtige Ergebnis in unter 300ms(Kann beim Deuggen abweichen). Bei der Eingabe von einem Sudoku, welches(wie bei meiner Lösung standartmäßig) mit Nullen gefüllt ist braucht sie 12 ms um eine oft im Internet als Beispielsudoku gesehene Lösung zu produzieren(ausprobieren;)). Die Klasse Sudoku wurde dabei Immutable gehalten(für die verwendete Rekursion recht praktisch:))

Zu sagen ist, dass man darauf achten sollte immer nur Mehrdimensionale Array mit wenigstens 9*9 Zahlen zu übergeben, anderes wird nicht abgefangen. Der restliche Code sollte nicht zu schnell zusammenbrechen(auch wenn bestimmte Teile nicht oft getestet wurde, da sie letztenendes nicht für die Gesamtlösung verwendet werden). Die entscheidenden Methoden sind die unteren 6(bis 9) welche auch ein wenig kommentiert sind(eher spärlich). Zu sagen ist, das eigentlich alles Null-basiert ist. Der Rest findet sich beim durschauen.

Benutzung:

    class Program
    {
        static void Main(string[] args)
        {
            Sudoku s = new Sudoku(
                new int[9, 9] {
                {0,8,0,4,0,0,2,0,9},
            {0,5,9,0,8,0,0,0,3},
            {0,0,0,0,0,9,0,0,7},
            {8,2,0,0,1,0,0,0,0},
            {5,0,0,0,7,0,0,0,6},
            {0,0,0,0,4,0,0,2,5},
            {3,0,0,7,0,0,0,0,0},
            {9,0,0,0,2,0,3,7,0},
            {7,0,5,0,0,8,0,9,0}}
            );

            /*Sudoku s = new Sudoku(
                new int[9, 9] {
                {0,0,0,0,0,0,0,0,0},
            {0,0,0,0,0,0,0,0,0},
            {0,0,0,0,0,0,0,0,0},
            {0,0,0,0,0,0,0,0,0},
            {0,0,0,0,0,0,0,0,0},
            {0,0,0,0,0,0,0,0,0},
            {0,0,0,0,0,0,0,0,0},
            {0,0,0,0,0,0,0,0,0},
            {0,0,0,0,0,0,0,0,0}}
            );*/

            s.drawToConsole();
            Sudoku solution = new Sudoku();
            
            Stopwatch stopWatch = new Stopwatch();
            stopWatch.Start();
            solution = s.findSolution();
            stopWatch.Stop();
 
            Console.WriteLine("Zeit: " + stopWatch.ElapsedMilliseconds + "ms");

            solution.drawToConsole();
            Console.ReadLine();
        }
    }

Eigentlicher Code:

    class Sudoku
    {
        private int[,] m_content;

        public Sudoku()
        {
            m_content = new int[9, 9];

            for (int row = 0; row < 9; row++)
            {
                for (int column = 0; column < 9; column++)
                {
                    m_content[row, column] = 0;
                }
            }
        }

        public Sudoku(int[,] content)
        {
            m_content = new int[9, 9];

            for (int row = 0; row < 9; row++)
            {
                for (int column = 0; column < 9; column++)
                {
                    m_content[row, column] = content[row, column];
                }
            }
        }

        public void drawToConsole()
        {
            for (int row = 0; row < 9; row++)
            {

                if (row % 3 == 0)
                {
                    Console.WriteLine("-------------");
                }

                for (int column = 0; column < 9; column++)
                {
                    if (column % 3 == 0) Console.Write("|");
                    Console.Write(m_content[row, column]);
                }
                Console.WriteLine("|");
            }
            Console.WriteLine("-------------");
        }

        public int[,] toArray()
        {
            return m_content;
        }

        private bool isRowValid(int row)
        {
            List<int> numbers = new List<int>();

            for (int column = 0; column < 9; column++)
            {
                if (numbers.Contains(m_content[row, column]))
                {
                    return false;
                }
                else if (m_content[row, column] != 0)
                {
                    numbers.Add(m_content[row, column]);
                }
            }
            return true;
        }

        private bool isColumnValid(int column)
        {
            List<int> numbers = new List<int>();

            for (int row = 0; row < 9; row++)
            {
                if (numbers.Contains(m_content[row, column]))
                {
                    return false;
                }
                else if (m_content[row, column] != 0)
                {
                    numbers.Add(m_content[row, column]);
                }
            }
            return true;
        }

        /// <summary>
        /// Zero based!
        /// </summary>
        /// <param name="box">Box numbers from top-left to bottom right in each row from left to right</param>
        /// <returns></returns>
        private bool isBoxValid(int box)
        {
            List<int> numbers = new List<int>();

            int boxRow = box ≤ 2 ? 0 : box ≤ 5 ? 1 : 2;
            int boxColumn = box % 3;

            for (int row = boxRow * 3; row < boxRow * 3 + 3; row++)
            {
                for (int column = boxColumn * 3; column < boxColumn * 3 + 3; column++)
                {
                    if (numbers.Contains(m_content[row, column]))
                    {
                        return false;
                    }
                    else if (m_content[row, column] != 0)
                    {
                        numbers.Add(m_content[row, column]);
                    }
                }
            }

            return true;
        }

        public bool isValid()
        {
            for (int i = 0; i < 9; i++)
            {
                if (!(isRowValid(i) && isColumnValid(i) && isBoxValid(i)))
                {
                    Console.WriteLine((!isRowValid(i) ? "Row " : "") + (!isColumnValid(i) ? "Column " : "") + (!isBoxValid(i) ? "Box " : "") + i.ToString());
                    return false;

                }
            }
            return true;
        }

        private bool isNumberValidAt(int row, int column, int value)
        {
            Sudoku s = insertNumberAt(row, column, value);

            int box = (row < 3 ? 0 : (row < 6 ? 1 : 2)) * 3 + (column < 3 ? 0 : (column < 6 ? 1 : 2));

            return s.isRowValid(row) && s.isColumnValid(column) && s.isBoxValid(box);
        }

        private List<int> getValidNumbersAt(int row, int column)
        {
            List<int> validNumbers = new List<int>();
            Sudoku s;
            for (int i = 1; i ≤ 9; i++)
            {
                s = insertNumberAt(row, column, i);

                int box = (row < 3 ? 0 : (row < 6 ? 1 : 2)) * 3 + (column < 3 ? 0 : (column < 6 ? 1 : 2));

                if (s.isRowValid(row) && s.isColumnValid(column) && s.isBoxValid(box))
                {
                    validNumbers.Add(i);
                }
            }
            return validNumbers;

        }

        public Sudoku insertNumberAt(int row, int column, int value)
        {
            int[,] newContent = m_content;
            newContent[row, column] = value;
            return new Sudoku(newContent);
        }

        public Sudoku findSolution()
        {
            // If the incoming Sudoku is already wrong dont jump into the solution algorithm
            if (isValid())
            {
                Sudoku s = findSolution(0, 0);
                return s == null ? new Sudoku() : s;
            }
            else
            {
                return new Sudoku();
            }
        }

        private Sudoku findSolution(int row, int column)
        {
            // If ready...
            if (row == 9)
                return this;
            
            // If row changed
            if (column == 9)
                column = 0;

            if (m_content[row, column] == 0)
            {
                foreach (int i in getValidNumbersAt(row, column))
                {
                    // Check next field
                    Sudoku s = (insertNumberAt(row, column, i).findSolution(column + 1 == 9 ? row + 1 : row, column + 1));
                    // If something comes back the solution was found!
                    if (s != null) return s;
                }
                return null;
            }
            else
            {
                return new Sudoku(m_content).findSolution(column + 1 == 9 ? row + 1 : row, column + 1);
            }
        }
    }

Thema: Suche Code für TextBox zur Anregung
Am im Forum: GUI: Windows-Forms

@herbivore

ja der reflector wäre noch eine idee...
thy

@flotse

danke das geht doch schonmal in die richtung in die ich dachte^^

Thema: Suche Code für TextBox zur Anregung
Am im Forum: GUI: Windows-Forms

Hey,

ich bin zZ auf der Suche nach(auszugsweisem) Code für eine TextBox. Da ich derzeit, schulisch bedingt, an einer solchen arbeite wollte ich mir einige Ideen holen bin jedoch über die gängigen Mittel(Forumsuche, Google, Codeproject) nicht fündig geworden...

Ist einem von euch ein solcher offener Quellcode bekannt oder gibt es sowas nur von Microsoft etc. die sich in Schweigen hüllen?

Mfg Campac

Thema: Datenkomprimierung mit AQUA
Am im Forum: Projekte

Hey,

Also die Kompressionsraten will ich auch. 3kb wäre ja schonmal wow! Was sich positives sagen lässt:

immerhin liegt die richtige zurück[Rechnungs]quote bei über 50%^^(jedenfalls im Schnelltest)

Zitat
da unter anderem die Zufallszahlen des Framework ärgste Probleme bereiten.
Außerdem würde ich gern verstehen, wie du mit der Verwendung von Zufallszahlen komprimieren willst?

Mfg Campac

Thema: [gelöst] Console Application - This programm cannot be run in Dos mode.
Am im Forum: Rund um die Programmierung

Hey,
edit: zu lahm
Zum Problem:
Ich meine, man muss doch eigentlich eine Textdatei angeben und Thunderbird akzeptiert meines Wissens auch nichts anderes an der Stelle, wo man den Pfad zur Signatur eingeben kann. Und das erklärt glaube ich auch dein Problem. Du hast doch an der Stelle wo eine Text-Datei hingehört deine *.exe Datei hingesetzt oder? Thunderbird liest die einfach mit nem StreamReader oder sonstewas aus und bekommt einen sinnlosen Haufen Zeichen. Und das "This programm..." usw. gehört einfach in den Programm Header(von allen Programmen?) rein. Das is schon uralt, hier z.B ein Auszug aus einem meiner Programme:

MZ       ÿÿ  ¸       @                                   €   º ´	Í!¸LÍ!This program cannot be run in DOS mode.
sieht dumm aus oder? Is aber genau der gleiche Anfang wie bei dir, nur komisch formatiert im Notepad++ siehts genauso aus.

Zur Lösung:
Wäre es denn nicht einfacher, wenn du deine Signaturen nur dann erneuerst wenn es wirklich nötig ist? Lies doch meinetwegen jede Stunde einmal aus oder schick automatisch an die anderen Standorte ne Mail wenn sich was ändert

Mfg Campac68

Thema: Wieso? -> System.UnauthorizedAccessException: "C:\Users\<userName>\Documents\Eigene Bilder"
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hey,

bist du sicher das der Pfad existiert? Bei mir heißt der nämlich nur "C:\Users\username\Eigene Bilder".

Mfg Campac

Thema: Windows 7 Taskbar Position ändern
Am im Forum: GUI: Windows-Forms

Hey,

meinst du die Position hinsichtlich des Bildschirmrandes ändern/herausfinden?

Mfg Campac

Thema: Wie ermittelt man die Pixel, die C# beim Zeichnen einer Linie oder eines Splines verwendet?
Am im Forum: Grafik und Sound

Vielleicht erfüllt die LineDDA aus der WinAPI einen Teil deiner Probleme laut diesem Post?

Thema: Wie ermittelt man die Pixel, die C# beim Zeichnen einer Linie oder eines Splines verwendet?
Am im Forum: Grafik und Sound

kann man denn eine asphärische linse sauber durch eine reihe von funktionen beschreiben?

Thema: Wie ermittelt man die Pixel, die C# beim Zeichnen einer Linie oder eines Splines verwendet?
Am im Forum: Grafik und Sound

Hey,

Zitat
Es muß doch eine Möglichkeit geben, daß man auch irgendwie eine Art Array oder so von Windows zurückbekommt, in dem die Koordinaten des zuletzt gezeichneten Graphikobjekts drinstehen.

Ich denke das ist nicht sinnvoll; überleg mal wie viel auf deinem Bildschirm gezeichnet werden muss, da würde es schwierig das zu bekommen was du gezeichnet hast. Läuft wie gesagt Methodenintern. Das einfachst ist wohl deine eigenen Methoden für diese Zwecke zu schreiben.

Zitat
es gibt diese Fälle für sphärische Linsen. Da wird dann getrickst mit der einfachen Linsengleichung oder es werden die Schnittpunkte von Strahl und Kreis berechnet. Ne ne, das will ich nicht, das ist zu billig.
Ziel ist ein Programm, in dem es beliebig viele beliebig parametriesierte Linsen gibt

Vielleicht solltest du erst einmal sphärischen Linsen versuchen. Das hab ich auch einmal gemacht. Nja war nich so berauschend ich finds nur grad nich. Dann stellt sich mir die Frage wie willst du denn deine Asphärischen Linsen beschreiben?

Mfg Campac

Thema: Externes Gerät - Insert/Remove - Event
Am im Forum: Rund um die Programmierung

Hallo,

ich suche nach einer Möglichkeit zu überprüfen wann eine CD/DVD/USB-Stick/Speicherkarte usw. eingesteckt/eingelegt wurde bzw. wieder entfernt wurde. Ist einem von euch ein solches Event bekannt?
Mir erscheint es zu aufwändig und zu lastig die ganze zeit zu überprüfen ob denn nun eine CD oder ähnliches drinne liegt oder nicht und falls sich was ändert etwas zu tun. Kennt eventuell jemand eine bessere Lösung mit dem sich das ganze realisieren lässt?

Ziel ist die Realisierung eines sich öffnenden Fensters mit Optionen ähnlich dem Windows Popup welches bei Geräteerkennung kommt.

Danke an alle Ideen
Campac

Thema: Lange Videos hochladen, nur Wo? Welche Platform?
Am im Forum: Smalltalk

@markus111:
Man muss soweit ich weiß Youtube Partner sein um Videos hochzuladen die länger als 10 Minuten sind. Dafür muss man natürlich auch Auflagen erfüllen, soweit ich weiß gibts dann auch ne Gewinnbeteiligung an den Werbeeinnahmen.

@eigentliches Topic:
Es gab mal einen Vergleich verschiedener Video Platformen in einer nicht allzu alten c't. Ziemlich sicher. Entweder war es Ende letztes oder Anfang dieses Jahr
Ich glaube nach kurzer Suche war es folgender:
c't 22/2009, S. 124

Außerdem meine ich zu wissen das man bei sevenload und Clipfish unbegrenzt lange Videos(aber nicht große! max. etwa 2GB) hochladen kann.

Mfg Campac

Thema: Singleton vs. statische Klasse. .. und wann überhaupt einsetzen?
Am im Forum: Rund um die Programmierung

Hey,

Zitat
das man weitestgehend auf Singleton verzichten kann

wollte nur mal ergänzen das es keinesfalls sinnlos ist das Pattern zu benutzen(bzw. sinnvoll darauf zu verzichten) man sollte es nur nicht übertreiben und nach anderen Lösungen suchen. Hier muss man aber wieder auf ein gutes Aufwand/Ergebnis Verhältnis achten.

Aber eig wollte ich fragen:

Warum sind denn statische Klassen
Zitat
C#-proprietär

Sie begegnen einem doch in etlichen Programmiersprachen wieder?


Mfg Campac

Thema: Eure iPhone-Lieblings-Apps?
Am im Forum: Smalltalk

Hey,

Also unsortiert und ohne Rangfolge mein lieblingsapps(hauptsächlich games aber auch utilyties):
-PapiJump plus (ich weiß nich ob Doodle Jump besser is^^ ich find beide iO)
-JellyCar (lustig für kurze Pausen)
-Pi Cubed (Taschenrechner, wenn man sich dran gewöhnt hat sehr mächtig)
-DoodleJump (tja das App schlechthin)
-Trace (tolles App, gute Ideen, leider zu kurz, sonst sehr schön auch grafisch)
-24 in one Gamebox(is zwar eig. sinnlos von Spielen her aber für 25ct immer mehr Spiele, fast monatlich 2)
-Archers (für 2 spieler)
-FallingBalls (für zwischendurch)
-PHYZIOS std (wenn man mal Zeit hat zum spielen)
-CubeRunner (auch sehr lustiges Endlosspiel in 3D)
-FlightControl (ziemlich taktisches Spiel bei dem man Flugzeuge landen muss)
-Shazam (Ich hab es lange vermisst, funktioniert auch mit den iTouch Mikrofonkopfhörern, super die Musikerkennung)
-Jungle Crash (man muss ein Flugzeug landen welches seitwärts fliegt und immer mehr absinkt, leider zu kurz)
-Die Siedler (Der Klassiker)
-Ganstar (Im GTA Style aber weitaus besser als GTA Chinatown allein wegen der Ansichten)
-Peggle (Leider sehr unbekannt, fesselt aber, is ein wenig im Flipperstyle nur das man 10 anstatt einem Ball hat um jedes Ziel einmal zu treffen)
-MotoX Mayham (Sehr lustig um die Tilt Steuerung zu nutzen, zu kurz aber die Level spielt man immer wieder um Rekorde zu brechen)
-Plants vs. Zombies (Mein Lieblings Tower Defense Spiel)
-TM Zero (Tower Defens in 3D)
-QuickGraph (Fuktionsplotter auch 3D)

Die sind teilweise kostenlos teilweise kostenpflichtig aber nur 2 oder so richtig teuer(sprich 5€)

enttäuscht bin ich von diesen hier:

-IceAge
-GTA Chinatown Wars(wie oben angedeutet)
-FinalFantasy (ich habe mir von dem Klassiker echt mehr erhofft)

Aso ich besitze den iPod Touch 3G

Mfg Campac

Thema: AssemblyVersion auslesen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat von Th69
Der Hauptfehler ist, daß eine lokale Variable gleichen Namens verwendet wird:


AssemblyVersionAttribute version = ...

Nja ich bin davon ausgegangen das das ne flüchtige Idee war die nich funktioniert hat aber noch im Quelltext is^^

Thema: Thema defekt?
Am im Forum: Wünsche und Kritik

ah zu dumm den hab ich nich gesehn^^

Thema: Thema defekt?
Am im Forum: Wünsche und Kritik

wie kommst du an den code?

Thema: Thema defekt?
Am im Forum: Wünsche und Kritik

geht auch nich wenn man z.B. unter Nicknames Beiträge im Profil schauen will

Thema: TextBox: Maximalen Speicher / Zeilenzahl begrenzen
Am im Forum: GUI: Windows-Forms

nja aber lässt sich doch halbwegs schnell etwa so realisieren oder?

        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (textBox1.Lines.Length > 5)
            {
                int selectionstart = textBox1.SelectionStart;
                int firstlinelength = textBox1.Lines[0].Length;
// Textlänge der ersten Zeile entfernen + die beiden steuerzeichen '\r' und '\n'
                textBox1.Text = textBox1.Text.Remove(0, firstlinelength + 2);
//Caret wieder an seine alte Position setzen
                textBox1.SelectionStart = selectionstart - firstlinelength;
            }
        }

Achtung das is kein fertiger Code!!

Thema: DesktopSave
Am im Forum: Projekte

Was solls is doch ne nette Idee und wenn ers braucht. Programme entstehen nun mal so ner Not heraus^^

Thema: AssemblyVersion auslesen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hey,

Das kommt einfach daher, dass

(AssemblyVersionAttribute)Attribute.GetCustomAttribute(asm, typeof(AssemblyVersionAttribute));
null zurückliefert. Sprich keine Instanz. Warum kann ich dir nicht sagen tut mir Leid, damit kenne ich mich nicht aus. Das könntest du immer abfangen(z.B. mit einem kurzen if) ob denn überhaupt eine Instanz existiert sprich das ganzen ungleich null ist. Ich denke es liegt einfach daran das die Version einfach nicht bekannt ist/ausgelesen werden kann(bei mir funktioniert nur das auslesen von Product-.-).

Mfg Campac

Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

Tja du warst schneller, meiner sähe so aus:

    class MyQueue<T> : IQueue<T>
    {
        private int _count;
        private QueueElement<T> front;

        public MyQueue()
        {
            _count = 0;
        }

        public int Count
        {
            get { return _count; }
        }

        public void Enqueue(T elem)
        {
            if (Count > 0)
            {
                front.enter(elem);
                _count++;
            }
            else
            {
                front = new QueueElement<T>(elem);
                _count++;
            }
        }

        public T Dequeue()
        {
            if (Count > 0)
            {
                T frontContent = front.Content;
                front = front.leave();
                _count--;
                return frontContent;
            }
            else
            {
                return default(T);
            }
        }

        public bool Contains(T elem)
        {
            if (Count > 0)
            {
                return front.Contains(elem);
            }
            else
            {
                return false;
            }
        }

        private class QueueElement<T>
        {
            QueueElement<T> next;
            public T Content
            {
                get;
                private set;
            }

            public QueueElement(T Content)
            {
                this.Content = Content;
            }

            public void enter(T elem)
            {
                if (next != null)
                {
                    next.enter(elem);
                }
                else
                {
                    next = new QueueElement<T>(elem);
                }

            }

            /// <summary>
            /// Gibt die nächste front zurück
            /// </summary>
            /// <returns></returns>
            public QueueElement<T> leave()
            {
                return next;
            }

            public bool Contains(T elem)
            {
                if (next != null)
                {
                    return Content.Equals(elem) || next.Contains(elem);
                }
                else
                {
                    return Content.Equals(elem);
                }
            }
        }
    }
Wurde nich lange getestet aber ich denke vom Prinzip her sollte es so ähnlich sein wie das von Corpsegrinder^^

Thema: SpiritEngine zum einfachen Gebrauch des Übernatürlichen
Am im Forum: Projekte

Hey,

Hattest du denn ein konkretes Spiel im Hinterkopf?

Sonst is die Idee nich schlecht obwohl ich nich wüsste was ich damit anfangen sollte.

Mfg Campac

Thema: Laptop mit SSD
Am im Forum: Smalltalk

Ich selber bin seit einem halben Jahr Besitzer eines AcerTravelMate 5730G. Genau das Modell was ich damals für rund 850€ gekauft habe finde ich irgendwie nich mehr aber dieses hier ist vergleichbar:
notebooksbilliger - TM5730-662G25N
Die Unterschiede zu meinem:
-schlechtere Grafikkarte(is ja kein Kriterium für dich)
-schlechterer Prozessor(2,2GHz anstatt 2,2 GHz)
-Double Layer DVD anstatt normal
-dafür isses halt auch 250€ billiger als meins^^

Du wirst jedoch nochmal suchen müssen da dieses Modell kein HDMI besitzt meines hier schon!
Ich bin mit dem Notebook voll zufrieden. Es ist super Verarbeitet und auch gut wartbar(Ich hatte am Anfang ein kleines Staubproblem am Lüfter allerdings lässt sich der ganze Spass super reinigen). Das Display ist gut, auch zur Arbeit im Freien oder in der Sonne obwohl ich darauf lieber verzichte. Der Lüfter ist angenehm leise. Betriebssystem wäre Windows 7 vorinst. Ich selber benutze auch hauptsächlich Win7 aber per Dual Boot auch OpenSUSE(Gnome). Leider hat Ubuntu keinen Treiber für die Graka zur Verfügung, deahalb SUSE. Einziges Manko wäre hier, das SUSE nicht mit der Power-Regulierung der GraKa klar kommt und den Lüfter nur schlecht trimmt.
Vergleich:
-Leerlauf Win7 Akkulaufzeit~2 1/2Std. - 3Std.
-Leerlauf SUSE Akkulaufzeit~1Std. - 1 1/2Std.
-Volllast Win7 Akkulaufzeit~1Std.
-Vollast SUSE Akkulaufzeit~1Std.
Das einzige was SUSE trimmt is das Display was ja gerade nicht sinnvoll ist wenn man unterwegs ist. Leider ein bisschen schade. Wie es sich mit Fedora verhält weiß ich nicht, würde es aber testen wenn du dich für ein ähnliches Modell entscheiden tätest. Allerdings müsste ich dies in näherer Zukunft wissen da ich plane mein System neuaufzulegen, da könnte ich es schnell probieren(Ich bin mir nich sicher aber SUSE basiert glaub auf Slackware während Fedora von RedHat kommt oder?).

Nja viel glück

Mfg Campac

Thema: Optische Maus auf Glas?
Am im Forum: Smalltalk

hmm dann kommst du wohl nicht um eine solche Maus herum

Thema: Optische Maus auf Glas?
Am im Forum: Smalltalk

darf man fragen wozu du ein a4 gr0ßes mauspad brauchst? ich nutze von meinem vielleicht 5cmx5cm

Thema: Optische Maus auf Glas?
Am im Forum: Smalltalk

Zitat
Als Alternative, welche ich mal austesten würde ( Am besten ist nunmal noch testen ) wäre die Logitech Cordless Click! Plus Optical Mouse.
Ich besitze die seit (hmm mal raten) 5-6 Jahren und eine Akku Ladung hält rund 1 Woche (immer noch, wenn man konsequent ist und die Maus erst lädt wenn die meckert).

es ging doch um die darkfield technologie. Ich kann mir nicht vorstellen, dass normale optische mäuse das können, sonst gäbe es ja keinen verwendungszweck dafür.

Warum nicht doch in ein gutes mauspad investieren? Die sehen teilweise echt schick aus(und gibts auch in viele farbenbzw. könnte mir sogar vorstellen das man sich iwo eigen mauspads kreieren kann). Wäre vermutlich günstiger und du bist nicht unbedingt auf darkfield technologie angewiesen. Zudem sind mauspads zum arbeiten teilweise komfortabler

EDIT: also meine Logitech RX1500 funktioniert nich auf galsplatten(bzw sie reagiert so gut wie nicht und wenn dochh dann nur stockend

Thema: Kann die ATI Radeon HD 5450 2x Full-HD?
Am im Forum: Smalltalk

nja wie gesagt die Auflösung packen mindenstens zwei von den drei anschlüssen locker und vga bei ausreichend guter signalqualität

Zitat
was du beschreibst, kann man in meinen Augen heute mit Fug und Recht als Mindestanforderung ansehen. Gibt es überhaupt noch aktuelle Grafikkarten, die das nicht können?
dem würde ich nicht unbedingt zustimmen. ATI gibt an "Ready for 1080p" und das is ja genau das was du willst, aber ich denke das bezieht sich nicht unbedingt auf 2 bildschirme oder? Die Grafikkarte ist ja als absolutes LoW-End vorgestellt wurden.

Campac