Da das Thema "Aktien" so kurz behandelt wurde, hier noch eine kleine Denkanregung:
Es ist richtig, dass man bei Aktien grundsätzlich das gesamte Geld verlieren kann. Allerdings kann man sein Augenmerk mit einer mittel- bzw. langfristigen Anlagestrategie auch auf die (regelmäßigen) Dividendenzahlungen legen und direkt in sehr wertstabile Firmen investieren. Dividenden bzw. Renditen von 2 bis 3 % sind momentan durchaus realistisch, wenn man so wenig Risiko wie möglich eingeht.
Sollte ein Weltkonzern wie z. B. Coca-Cola total einbrechen, hat die Wirtschaft vermutlich sowieso ein großes Problem. Man sollte den Unternehmen hierzu natürlich idealerweise vertrauen und nicht auf kurzfristige Kursgewinne aus sein. Geht man insgesamt von einem weltweiten Wirtschaftswachstum aus, kann man daran auch durch Aktien teilhaben (und sogar noch ein kleines bisschen in den Unternehmen mitbestimmen).
Beiträge von meistertogo
-
-
Kleine, vom eigentlichen Thema unabhängige, Bemerkung:
Für das Darstellen von AutoIt-Quellcode in Forenbeiträgen eignen sich die AutoIt-Quellcode-Tags, die sich im Quellcode-Modus ein kleines Stück rechts neben den von Dir verwendeten PHP-Quellcode-Tags befinden, deutlich besser als die PHP-Quellcode-Tags. -
Hallo tztztz,
das Problem ist, dass Dein Programm aus der Hauptendlosschleife, die das erste GUI auf Events abfragt, heraus die Funktion aufruft, sodass diese Schleife nicht mehr aus bzw. in der Funktion verlassen werden kann. Folglich befindest sich das Programm im Anschluss daran (d. h. nach Eintreten in die zweite und somit innere Endlosschleife, die für das zweite GUI zuständig ist,) lediglich und permanent in dieser Schleife, sodass auf Events aus dem ersten GUI nicht mehr reagiert werden kann.
Deshalb hier zwei mögliche Lösungen:
- Verlassen der inneren Schleife.
- Verwenden des GUIOnEventModes ([autoit]Opt()[/autoit]).
-
Blubkuh:
Warum verwendest Du die Variable $i (Z. 23, 31, 35) als String -- was Abgleiche u. U. erschweren kann -- und nicht als (Integer-)Zahl? -
Für mich macht das beschriebene Verhalten von
[autoit]_ArrayDisplay()
[/autoit]durchaus Sinn:
Dein Array besteht aus 10 Spalten zu je 12 Zeilen (oder andersherum). Beim Darstellen dieses Arrays mithilfe der o. g. Funktion werden jetzt allerdings elf Spalten-Überschriften benötigt, da die Index-Spalte auch dargestellt und mit einer Überschrift versehen wird. -
Wenn Du Zahlen verrechnen möchtest, solltest Du keine Strings verwenden, d. h., die Zahl darf kein "," -- wie nach dem Aufruf von _CheckDec -- enthalten; ansonsten musst Du vor und nach dem Berechnen entsprechende Ersetzungen vornehmen oder andere Funktionen verwenden bzw. schreiben (?), die das Rechnen mit Strings in einem bestimmten Format ermöglichen.
-
Es wäre schön, wenn Du zum Darstellen von Quellcode in Forenbeiträgen die entsprechenden Tags verwendest (bzw. bei AutoIt-Quellcode die AutoIt-Quellcode-Tags); bei größeren Mengen Code auch gerne die nebenstehenden Spoiler-Tags.
-
Es ist schön, dass Du Dein Problem nun selbstständig lösen konntest.
Deshalb wäre es nett, wenn Du -- durch Bearbeiten des ersten Beitrags -- das Präfix auf "gelöst" ändern könntest.
-
Hallo Autoiter,
Du solltest Dir über einige Funktionen und ihre Funktionalität zunächst grundsätzlich Klarheit verschaffen:
Z. 23 Deines Codes würde ich als
[autoit]If GUIGetMsg() == $GUI_EVENT_CLOSE Then
[/autoit]schreiben; die Zeilen 25 und 26 können nicht zur Ausführung kommen, da die (zweite) Schleife mit
[autoit]ExitLoop
[/autoit]in Z. 24 verlassen wird.
Prinzipiell befindet sich Dein Programm vom Start des Streams an in der (Endlos-)Schleife von Z. 22 bis Z. 31, sodass auf andere Ereignisse nicht mehr reagiert werden kann -- es sei denn, diese werden in der zweiten Schleife abgefragt.
Diese Situation ist m. E. nicht zu empfehlen. -
Hallo Chromebacher,
verwende bitte für das Darstellen größerer Mengen Quellcode in Forenbeiträgen die Spoiler-Tags.
Der Quellcode von Zeile 15 bis Zeile 43 ist vermutlich mit einer Schleife (und u. U. einem weiteren Array der Indizes der zu löschenden Array-Elemente) zu vereinfachen.
-
Hallo Sirius,
verwende bitte in Zukunft für das Darstellen von größeren Mengen Quellcode in Forenbeiträgen die Spoiler-Tags.
-
Verwende für die Darstellung von AutoIt-Quellcode im Forum besser die AutoIt-Quellcode-Tags; diese befinden sich im Quellcode-Modus weiter rechts neben den Quellcode-Tags.
-
Du könntest z. B. solange zufällig verteilen, bis eine Konstellation gefunden ist, die Deinen Anforderungen genügt.
[autoit]
Hilfreich sein dürften dabei Do-Until-Schleifen, ein zweidimensionales Array (s. dazu das Array-Tutorial von BugFix) und die FunktionRandom()
[/autoit].
-
Mein o. g. Anliegen war, Berechnungen in externe Anwendungen auslagern zu können, sodass diese Anwendungen nicht die eigentlich zu berechnenden Zahlen kennen.
Ein Weg der möglich wäre ist z. B. alle Zahlen mit 10 zu multiplizieren (o. Ä.); allerdings sind diese einfach kombinierten arithmetischen Operationen m. E. nicht zielführend.Dennoch vielen Dank für Eure Bemühungen!
-
Vielleicht hilft Dir ja der GUIOnEventMode (
[autoit]Opt("GUIOnEventMode", 1)
[/autoit]) weiter.
-
Auch wenn die Sinnhaftigkeit des Unterfangens für die Lösung des Problems eigentlich unerheblich sein sollte, hier eine Möglichkeit: Berechnung und Verschlüsselung werden von verschiedenen Skripts (oder verschiedenen Programmen oder auf verschiedenen Computern ...) ausgeführt; die Berechnung soll ohne die Kenntnis (d. h. mögliche Rückschlüsse) der Originaldaten möglich sein.
-
Ich möchte Zahlen nach einem einheitlichen Verfahren verschlüsseln und anschließend verrechnen. Im letzten Schritt soll das Ergebnis wieder entschlüsselt werden.
Welche Verschlüsselungsverfahren wären denn geeignet? -
Ich möchte im folgenden Skript die Summe von 42 und 15 berechnen: zunächst nicht verschlüsselt und anschließend verschlüsselt.
Skript
[autoit]#include-once
[/autoit] [autoit][/autoit] [autoit]
#include <Array.au3>
#include <Crypt.au3>Global $sSchluessel = "Test", $sAlgorithmus = $CALG_DES, $aTabelle[3][2] = [[42, ""], [15, ""], ["", ""]];42 + 15 = 57
[/autoit] [autoit][/autoit] [autoit]_Crypt_Startup()
[/autoit] [autoit][/autoit] [autoit]$aTabelle[0][1] = Number(_Crypt_EncryptData($aTabelle[0][0], $sSchluessel, $sAlgorithmus))
[/autoit] [autoit][/autoit] [autoit]
$aTabelle[1][1] = Number(_Crypt_EncryptData($aTabelle[1][0], $sSchluessel, $sAlgorithmus))$aTabelle[2][0] = $aTabelle[0][0] + $aTabelle[1][0]
[/autoit] [autoit][/autoit] [autoit]
$aTabelle[2][1] = $aTabelle[0][1] + $aTabelle[1][1];<- Fehler (?)_ArrayDisplay($aTabelle);zu Testzwecken
[/autoit] [autoit][/autoit] [autoit]ConsoleWrite($aTabelle[0][0] & @TAB & "+" & @TAB & $aTabelle[1][0] & @TAB & "=" & @TAB & $aTabelle[2][0] & @CRLF);unverschlüsselt
[/autoit] [autoit][/autoit] [autoit]
ConsoleWrite($aTabelle[0][1] & @TAB & "+" & @TAB & $aTabelle[1][1] & @TAB & "=" & @TAB & $aTabelle[2][1] & @CRLF);verschlüsselt
ConsoleWrite(Number(_Crypt_DecryptData($aTabelle[0][1], $sSchluessel, $sAlgorithmus)) & @TAB & "+" & @TAB & Number(_Crypt_DecryptData($aTabelle[1][1], $sSchluessel, $sAlgorithmus)) & @TAB & "=" & @TAB & Number(_Crypt_DecryptData($aTabelle[2][1], $sSchluessel, $sAlgorithmus)) & @CRLF);entschlüsseltMsgBox(0, "@error-Wert", "@error-Wert:" & @TAB & @error)
[/autoit] [autoit][/autoit] [autoit]_Crypt_Shutdown()
[/autoit] [autoit][/autoit] [autoit]Exit
[/autoit]
[autoit]
Das Problem ist der letzte in die Konsole zu schreibende Wert, der "-1" -- und nicht "57" -- ist.
Ich habe das Verfahren bereits mit mehreren Algorithmen, d. h. verschiedenen Werten für$sAlgorithmus
[/autoit], getestet; der beschriebene Fehler war stets derselbe.
Ich wäre für jeden Vorschlag dankbar!
-
Dann kannst Du das Thema bzw. dessen Titel auf "gelöst" setzen.
-
Ein stilistisch unschönerer Weg, der vielleicht für Dich besser verständlich ist: Verwende
[autoit]#include-once
[/autoit]
#include <Array.au3>
_ArrayFindAll()in einer Schleife für alle Elemente des Arrays $a_Array von AspirinJunkie und trage die Ergebnisse, d. h. die Anzahl der Indizes je Element in $a_Array (hierzu vielleicht:
[autoit]UBound()
[/autoit]), in Dein Histogramm-Array ein.