Zum Inhalt springen

Schandfleck

Mitglieder
  • Gesamte Inhalte

    34
  • Benutzer seit

  • Letzter Besuch

  1. Fast. Gib mal für x Zahlen mit und ohne Nachkommastellen (bzw. Punkt) ein: 0 0.5 1 1.2 ... Die müßten alle unterschiedliche Ergebnisse liefern, oder? Tipp: Es sind zwei Stellen im Programm zu ändern.
  2. Die Zahl e ist in math.h schon definiert und heißt M_E. Anstatt pow(2.71828183,x), bzw. pow(M_E, x) kannst Du auch exp(x) verwenden. Genereller Tipp: Achte auf die Einrückungen von Funktionen und Schleifen, schreibe öffnende und die zugehörige schliessende geschweifte Klammern untereinander. Das erhöht die Übersichtlichkeit.
  3. Die Sachen mit den int, dem do und dem Vergleich wurden ja schon angesprochen. Schaue Dir aber auch mal die Mathematik hinter Deinem Programm an. Den Fall D=0 brauchst Du nicht extra zu behandeln. Wirf besonders auch einen Blick auf den Fall D<0. Wozu dient das j? Du hast es als int deklariert, aber nie einen Wert zugewiesen. Hast Du die Formeln aus der Schule, oder aus einem Buch? Wenn Du es nicht auf Anhieb alles hinbekommst, poste hier nochmal eine verbesserte Version Deines Programms.
  4. Das Problem sind die Zeilenumbrüche in $adminflag. Stringkonstanten können sich in Java-Script nicht über mehrere Zeilen erstrecken. Verwende stattdessen anderes white-space, oder die Sequenz \n. Dazu die Single-Quotes in PHP beibehalten, damit sie von Java-Script und nicht schon von PHP interpretiert wird.
  5. Du kennst ja die Code-Blöcke, die für die einzelnen Anhänge zuständig sind. Du musst nur eine Abfrage einfügen, so dass die Code-Blöke nur ausgeführt werden, wenn die Datei auch vorhanden ist. In diesem Forum wird auf Hilfe zur Selbsthilfe gesetzt. Deshalb gebe ich nicht einfach den Code an. Du scheinst Programmieranfänger zu seien. Das nimmt Dir hier niemand übel, aber probiere es erstmal selbst. Wenn Du Schwierigkeiten hast, darft Du hier natürlich fragen. Der Code-Schnipsel, den Du verwendest ist, leider nicht geeignet, um ernsthaft genutzt zu werden; geistert aber immerwieder durch Foren.
  6. Mehere Zeilen mit Upload-Feldern untereinander ist zunächst kein Problem. Du mußt nur jedem <input>-Feld einen eigenen Namen mit dem name-Parameter zuweisen. Das PHP-Script mußt Du freilich auch anpassen, damit es die zusätzlichen Dateien verarbeitet. Am Besten Du postest den Code hier, wenn Du konkretere Hilfe haben möchtest. Ciao, Schandfleck
  7. Schandfleck

    Fakultät in C

    Es gibt noch long double. Der Wertebereich von long ist i.A. kleiner als der von double. U.U. war es der Sinn hinter der Aufgabe, eine 6stellige Zahl einzugeben, auf die numerischen Grenzen aufmerksam zu machen.
  8. Was willst Du verwenden, X.509 oder GnuPG? Das sind unterschiedliche, inkompatible Standards. Kleopatra (bzw. Gpg4win) kann seit Version 2 mit beidem umgehen, aber wenn der Kunde nur GnuPG einsetzt, kann er mit Deinem X.509-Zertifikat nichts anfangen.
  9. Das const, das ich eingefügt habe, bedeutet lediglich, daß der betreffende Wert, in diesem Fall das Ziel des doppelten Zeigers, nicht verändert werden kann. Da qsort() von der Vergleichsfunktion erwartet, daß diese die Werte nicht verändert, sollte sie entsprechend deklariert seien; anderenfalls gibt es eine Warnung wegen des nicht passenden Typs. Typdeklarationen in C liest man am Besten so, als würde die Variable benutzt. Beispiel, wenn Du unsicher bist, was sp in »const char **sp« für einen Typ ist, fang mit sp an. Darauf wird der Dereferenzierungsoperator (*) angewandt. sp muß also schonmal ein Zeiger auf irgendetwas seien. Dann folgt ein weiteres Sternchen. *sp ist also auch ein Zeiger, sp somit ein Zeiger auf ein Zeiger. char **sp gibt nun an, daß **sp ein char ist. Somit ist sp ein Zeiger auf einen Zeiger auf ein Char. Das zusätzliche const heißt nun, das der Wert unveränderbar ist. Beachte, daß sich das const nur auf den Char bezieht, auf den **sp zeigt. Die Zeiger *sp und sp dürfen durchaus verändert werden. Interessant ist die Deklaration der Funktion qsort() void qsort(void *base, size_t nmemb, size_t size, int(*compar)(const void *, const void *)) Das vierte Argument heißt compar und ist ein Zeiger auf eine Funktion, die zwei Zeiger auf einen konstanten Wert unbekannten Typs als Argument hat, und einen Integer als Ergebnis liefert. Klar?
  10. bei "ab fehlt ein schliessendes " streng genommen int scmp(const void *sp1, const void *sp2) { return strcmp(*(const char **)sp1, *(const char **)sp2); } Dein Array heißt Array1, es enthält char* qsort(Array1, 4, sizeof (char *), scmp); Du hast nur vier Elemente im Array Array1, nicht values Insgesamt sollte es etwa so aussehen: #include <stdio.h> #include <stdlib.h> char *Array1[] = {"ca", "ab", "ba", "cb"}; int scmp(const void *sp1, const void *sp2) { return strcmp(*(const char **)sp1, *(const char **)sp2); } int main(int argc, char **argv) { int n; qsort(Array1, 4, sizeof (char *), scmp); for (n=0; n<4; n++) printf("%s ", Array1[n]); return 0; }
  11. Hier wäre dann das Script. Du mußt noch passende E-Mail-Adressen eintragen. Beachte, daß die vom Web-Server verwendete Absender-Adresse sich hier NICHT konfigurieren läßt. Du mußt aber eine passendes E-Mail-Postfach einrichten, um ggf. Fehlermeldungen empfangen zu können. Das MAIL_FROM im Script sollte auf diese Adresse eingestellt werden. Falls Du Fragen hast, melde Dich hier. submit.php.zip
  12. Schandfleck

    VPN vs https

    Wobei sich dann der Einsatz von Client-Zertifikaten anbietet, damit beide Seiten in der Lage sind Main-in-the-Middle-Angriffe zuerkennen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...