Zum Inhalt springen

VR6

Mitglieder
  • Gesamte Inhalte

    38
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von VR6

  1. na wie bekomm ich denn den dezimalen wert des buchstaben heraus???
  2. na das cWerte war doch schon ein char Array oder nicht??? na jedenfalls hab ich das jetzt ein bissl anders gelöst ... ich hab einfach die dezimalen Code des ASCII Zeichens genommen und addiert. Das reicht erstmal. int ermittleHash(char string[255]) { hash = 0; int zahl = 0; //length_cwert = sizeof(cWerte) / sizeof(cWerte[0]); while(zahl < strlen(string)) { itoa(string[zahl], tmp, 10); hash += atoi(tmp); zahl++; } return hash; }
  3. Hm eigentlich hab ich schon den Code abgeändert... #include <stdlib.h> #include <ctype.h> #include <string.h> #include <stdio.h> #include "asuro.h" int volt, zaehler, HashWert, hash, i,length_cwert; // Char-Array / das gleiche wie Strings char text2[100]; char text[100]; char test[100]; char string[255]; char tmp[255]; char cWerte[39][1] = {"1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",";",":","#", "_"}; int iWerte[39] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39}; int ermittleHash(char string[255]) { hash = 0; int zahl = 0; length_cwert = sizeof(cWerte) / sizeof(cWerte[0]); while(zahl < strlen(string)) { for(i=0; i<length_cwert; i++) { if(string[zahl] == cWerte[i]) { hash += iWerte[i]; } } zahl++; } return hash; } int main(void) { Init(); while(1) { // alle 1000 Durchläufe ausführen if(zaehler % 30000 == 0) { // copy des Quellstring nach char Test strcpy(test, "id:asr_001:bat:"); // Batteriewerte werden ermittelt int a = Batterie(); int b = Batterie(); if (a == volt = a; // wandelt volt (int) in ein char-Array itoa(volt, text, 10); volt); // strcat hängt den parameter an den ersten strcat(test, text); strcat(test, ";"); // ErmittleHash HashWert = ermittleHash(test); itoa(HashWert, text2, 10); strcat(test, text2); strcat(test, "#"); SerPrint(test); } zaehler++; } } [/code]
  4. achja ... hatte ich mich nur verschrieben sry... jetzt bringt der compilier aber noch eine warnung: test.c:30: warning: comparison between pointer and integer was meint der damit???
  5. Danke für die schnelle Antwort. ok also das weglassen. aber komischerweise bleibt der hashwert beim Standardwert 0. Eigentlich müsste er es doch aufaddieren. Hier die geänderte Funktion: int ermittleHash(char string[255]) { hash = 0; int zahl = 0; length_cwert = sizeof(cWerte) / sizeof(cWerte[0]); while(zahl < strlen(string)) { for(i=0; i<length_cwert; i++) { if(string[zahl] == iWerte[i]) { hash += iWerte[i]; } } zahl++; } return hash; }
  6. Hallo liebe Community, ich habe ein Problem mit C. Und zwar möchte ich aus einem String einen ganz einfachen Hashwert ermitteln. Also eine Art Prüfsumme. Und zwar wird in einer Schleife der Index des zu codierenden Strings angesprochen, und diesen mit einem Array vergleicht. Ist dieser char vorhanden, dann nehme den Index und schaue an der Stelle im Zahlenarray und addiere den mit der Variable "hash". Und so geht das den ganzen String durch. Aber irgendwie addiert mein Programm "Hash" nicht auf. Ich glaube auch das itoa beim umwandeln nur zahlen bringt. Habt ihr ne Idee was ich falsch mache bzw. was ich besser machen könnte??? #include <stdlib.h> #include <ctype.h> #include <string.h> #include <stdio.h> #include "asuro.h" int volt, zaehler, HashWert, hash, i,length_cwert; // Char-Array / das gleiche wie Strings char text2[100]; char text[100]; char test[100]; char string[255]; char tmp[255]; char cWerte[38][1] = {"1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z",";",":","#"}; int iWerte[38] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38}; int ermittleHash(char string[255]) { hash = 10; int zahl = 0; length_cwert = sizeof(cWerte) / sizeof(cWerte[0]); while(zahl < strlen(string)) { for(i=0; i<length_cwert; i++) { itoa(string[zahl], tmp, 10); if(strcmp(tmp, cWerte[i]) == 0) { hash += iWerte[i]; } } zahl++; } return hash; } int main(void) { Init(); while(1) { // alle 1000 Durchläufe ausführen if(zaehler % 30000 == 0) { // copy des Quellstring nach char Test strcpy(test, "id:asr_001:bat:"); // Batteriewerte werden ermittelt int a = Batterie(); int b = Batterie(); if (a == volt = a; // wandelt volt (int) in ein char-Array itoa(volt, text, 10); // Alternativ auch ... // strcat hängt den parameter an den ersten strcat(test, text); strcat(test, ";"); // ErmittleHash HashWert = ermittleHash(test); itoa(HashWert, text2, 10); strcat(test, text2); strcat(test, "#"); SerPrint(test); } zaehler++; } } [/code] Danke & Gruß xXx
  7. Ah okay ... jetzt raff ich es -> Danke :uli
  8. Aha jetzt versteh ich das solangsam ... So wie ich das sehe wird i in den String davor gepackt und dieser in test, oder? Und für was steht das %i und %s?
  9. Ok danke so funzt es. Nochmal n kleines Verständnisproblem. In C gibts ja anscheindend Zeichenketten nur als char, also kein Datentyp String. Wenn ich dann dem Char-Array etwas zuweisen will, muss ich dann immer strcpy nehmen? Anscheindend bin ich C# verwöhnt, wo ich ich nem String einfach n Wert zuweisen kann.
  10. Also das heißt das ich dann das schreibe? zB: char text[255]; char test[255];
  11. Hallo "Fachinformatiker", ich bin ein relativ neuer C-Neuling. Ich hab n Roboter den ich programmiere. Mein Programm hat eine Batterie() Funktion, die ermittelt den Batteriestand. Desweiteren ein ID für jeden Robo. Jetzt möchte ich den Batteriestand (int) der ID (char) anhängen. Dieser Vorgang wird in ner While-Schleife wiederholt, aber nur alle 1000mal, aus Performancegründen. Also grob zusammengefasst: ich will eigentlich nur chars bzw. chars mit int verknüpfen. weiß hier vielleicht einer weiter ??? Zum Problem: Es kommende Fehlermeldungen: test.c:66: warning: assignment makes integer from pointer without a cast test.c:69: warning: passing arg 2 of `itoa' makes pointer from integer without a cast test.c:70: warning: passing arg 1 of `strcat' makes pointer from integer without a cast test.c:70: warning: passing arg 2 of `strcat' makes pointer from integer without a cast test.c:71: warning: passing arg 1 of `SerPrint' makes pointer from integer without a cast _________________________________ anscheindend wandelt itoa volt nicht in text um, warum? Hier der Code: #include <stdlib.h> #include <string.h> #include <stdio.h> #include "asuro.h" int volt, zaehler; char text; char test; int main(void) { Init(); while(1) { if(zaehler % 1000 == 0) { test = "id:001->Bat:"; volt = Batterie(); itoa(volt, text, 10); strcat(test, text); SerPrint(test); } zaehler++; } } Für Hilfe wäre ich dankbar. Gruß VR6
  12. Nein ich will lieber kein Linux, Windows ist mir da noch lieber ... evtl. später als 2. Betriebssystem oder über VM-Ware werde ich das dann nochmal probieren. Naja am Montag werde ich eure Varianten mal ausprobieren und mich wieder melden wenn ichs gepackt habe
  13. Erstmal danke für die Antwort und zweitens fürs verschieben, war mir da nicht sicher wohin mit dem thread. Zur 1. Variante: Naja das Problem ist ja das ich ja nicht in die Windowsfestplattenpartinionierung rein komme. Die CD startet ja normal doch danach ist Pumpe ... Naja und zu 2.: Ich hab auch schon unter Fedora probiert und es mit fdisk/mke2fs versucht aber da blick ich mal gar net durch. weißt du da mehr als ich. da soll man doch auch partionen löschen können. naja nach dem wochenende kann ich mir dann auch ne linux-cd beschaffen
  14. Hallo liebe Fachinformatiker und Co. Ich habe ein Prob mit meinem PC. Also. Vor einiger Zeit hab ich mal mit dem Gedanken gespielt ein Linux zu installieren und hab das auch mal gemacht. Ich bin Neuling in dem Gebiet und hab dann - mir war es auch egal - Fedora als primäres Betriebssystem installieren. Also es läuft darauf nix anderes als Fedora 7 (Monnshine). Da ich wohl doch nicht der begeisterte Linuxfan bin wollte ich Windows XP wieder installieren aber es funzt leider nicht. Hab es schon mit 2 XP-CD´s probiert und jetzt auch mal eine Notfall CD ausprobiert. Also noch genauer das Problem beschrieben: Ich lege die XP CD ein und starte ... danach "Drücken Sie eine Taste bla bla bla" ... ich drücke natürlich die Taste ... es erscheint dann die Meldung "Setup untersucht Hardwarekonfiguration ..." ... und dann kann man ewig warten. Es passiert danach einfach nichts weiter. Hab schon verschiedene Laufwerke probiert aber überall das gleiche. Wäre nett wenn mir jemand Tipps geben kann wie ich Fedora runter bekommen und Windows wieder drauff bekomm. Danke Grüße VR6
  15. Hm so dachte ich es mir auch, bin aber nun auf einen anderen Weg gekommen und mttlerweile schon fast fertig. Wäre jetzt zu umständlich euch das alles zu erklären, aber klappt... Trotzdem danke für eure Hilfe, im Prinzip könnte ihr den Thread wieder löschen, war ja eh für die Katz
  16. Stringrepräsenatation? ... hilf mir bei dem Wort auf die Sprünge Naja an Schleifen hab auch auch schon gedacht, aber die müsste da ja alle möglichen Kombinationen durchspielen, aber bei der Umsetzung dieser Variante hapert es. Und was meinst du mit in_array()?
  17. Hallo liebe Fachinformatiker, ich steh gerade wahrscheinlich total auf dem Schlauch, deswegen helft mir bitte. Mein Problem: ich hab ein mehrdimensionales Array :mod: $array = array(array(3,3,"Test"), array(5,2,"bla"), array(3,3,"Test")); So nun möchte ich die doppelten Element löschen, also in diesem Fall wäre das $array[0] & $array[2]. Hab es schon mit array_unique probiert aber klappt nicht?! Dann wollte ich die einzelnen Elemente miteinander vergleichen, aber hab kein vernüftigen Anfang gefunden. Übrigens: das Array ist nur ein Beisiel, normalerweise ist mein Array länger und auch viel größer, also muss es so dynamisch wie möglich sein. Danke schonmal im Voraus Gruß
  18. Ja das ist alles intern der Firma. Naja mir wurde gesagt man kann den angemeldeten User nicht herausfinden. naja das wäre bestimmt ein bisschen aufwenig für so ein einfaches Voting. Weil diese Leute sollen auf einen Stern klicken und schon wurde gevotet, ohne irgendwelche Dinge zusätzlich anzugeben. Naja ich werd das dann über die Cookies machen müssen. Stimmt aber diese Wissenschaftler werden werden sich nicht die Mühe machen das Votingsystem zu hintergehen.
  19. Ja, das kommt hier in der Firma schon öfters vor, weil wir 12 Azubis alle über einen VM-Server gehen. Und ich denke das wird bestimmt auch bei mehreren so sein. Ja die könnten ausversehen die lösche, man muss doch immer von den schlimmsten Fällen ausgehen. @ZesterDay: ich würde es ja mit login machen aber das macht dann hier keiner mit wenn sich alle erstmal ein Account zulegen müssten um für das Essen zuvoten.
  20. Also gibt es überhaupt keine andere Möglichkeit so etwas zu realisieren, ohne dabei mehrmals voten zu können? Gut, danke für deine Antwort.
  21. Also mein Problem, ich mache ein Voting, wo Leute die heutigen Essen bewerten können. Da diese aber nicht mehrmals abstimmen können hab ich mir eine Sperrzeit überlegt, d.h sie können bei mir dann erst nach 1 Stunde wieder ihren Vot korrigieren. Dies wird mit Hilfe der IP kontrolliert. Aber da manche über einen Server gehen haben die ja die gleiche IP-Adresse. Also wurde mir gesagt: "Nimm doch Cookies". So mein Problem, ich weiß nicht wirklich wie ich es umsetzen soll. Ich dachte mir, wenn dieser nette Mensch votet, dann baue ein Cookies mit nem Wert drin und speichere den in einer Datenbank. Und FALLS er die Cookkies nicht löscht geht das ganze ja auch, es wird dann immer verglichen ob der Wert im Cookie mit dem in der Datebank übereinstimmt. Aber was ist wenn er das Cookie löscht? Aber so ganz schlüssig bin ich mir da auch nicht, also wie ist eure Meinung dazu? Gruß VR6
  22. VR6

    HTML-Tabelle zu Excel-Tabelle

    Ok hab das Problem bereits andersweitig gelöst Vielen Dank trotzdem
  23. Hallo, ich habe ein Problem ich möchte eine HTML-Tabelle (zB.1.Bundesliga-Tabelle) via VBA nach excel übertragen und es soll dann eine Excel-Tabelle werden. Nun war ich soweit das die ich alles aus der HTML-Tabelle ausgelesen habe und nunwill ich aber mit Hilfe der regulären Ausdrücke die Tags entfernen damit nur noch die Daten stehen bleiben.Diese will ich dann wiederum in die Excel-Tabelle schreiben. Jetzt hänge ich aber bei den Ausdrücken und brauch ein Gedankenanstoß, denn es stehn noch ein Haufen Leerzeichen und Semikolon da und die bekomme ich nicht weg. Option Explicit Public Function GetFile(Tabelle) Dim Html As String Open "D:\Eigene Uebungen Kevin\VBA\tabelle.htm" For Input As #1 Do While Not EOF(1) Line Input #1, Tabelle Html = Html & Tabelle & vbCrLf Loop Close #1 Html2Text (Html) End Function Public Sub Html2Excel() Dim Html, Text, Tabelle, strText As String Html = GetFile(Tabelle) Text = Html2Text(strText) Text2Excel (strText) End Sub Public Function Html2Text(strText) Dim strPattern As String Dim strRetStr As String Dim strReplace As String Dim Tabelle As String Dim Html As String strText = Html strPattern = "<+.+?>" strReplace = ";" strRetStr = GetRegExpString(strText, strPattern, strReplace) Debug.Print strRetStr End Function Public Function Text2Excel(Html) Cells(1, 1).Value = Html End Function Public Function GetRegExpString(ByVal vsStringIn As String, ByVal vsPattern As String, ByVal vsReplace As String) As String Dim objRegExp As RegExp Set objRegExp = New RegExp objRegExp.IgnoreCase = False objRegExp.Global = True objRegExp.Pattern = vsPattern GetRegExpString = objRegExp.Replace(vsStringIn, vsReplace) Set objRegExp = Nothing End Function und meine HTML-Tabelle: <TABLE CELLPADDING=4 BORDER=0> <TR BGCOLOR="Red"><TH COLSPAN=2>Platz<TH>Mannschaft<TH>Spl.<TH>gew.<TH>rem.<TH>verl.<TH>Tore<TH>Dif.<TH>Pkt. <TR BGCOLOR="Green"> <TD ALIGN=right> 1 <TD ALIGN=right> 1 <TD> 1. FC Kaiserslautern <TD ALIGN=right> 34 <TD ALIGN=right> 19 <TD ALIGN=right> 11 <TD ALIGN=right> 4 <TD> 74 : 28 <TD ALIGN=right> 46 <TD ALIGN=right> 68 <TR BGCOLOR="Green"> <TD ALIGN=right> 2 <TD ALIGN=right> 3 <TD> VfL Wolfsburg <TD ALIGN=right> 34 <TD ALIGN=right> 14 <TD ALIGN=right> 16 <TD ALIGN=right> 4 <TD> 52 : 29 <TD ALIGN=right> 23 <TD ALIGN=right> 58 <TR BGCOLOR="Green"> <TD ALIGN=right> 3 <TD ALIGN=right> 2 <TD> Hertha BSC Berlin <TD ALIGN=right> 34 <TD ALIGN=right> 17 <TD ALIGN=right> 7 <TD ALIGN=right> 10 <TD> 57 : 38 <TD ALIGN=right> 19 <TD ALIGN=right> 58 <TR BGCOLOR="White"> <TD ALIGN=right> 4 <TD ALIGN=right> 4 <TD> FSV Mainz 05 <TD ALIGN=right> 34 <TD ALIGN=right> 14 <TD ALIGN=right> 12 <TD ALIGN=right> 8 <TD> 50 : 34 <TD ALIGN=right> 16 <TD ALIGN=right> 54 <TR BGCOLOR="White"> <TD ALIGN=right> 5 <TD ALIGN=right> 5 <TD> Stuttgarter Kickers <TD ALIGN=right> 34 <TD ALIGN=right> 14 <TD ALIGN=right> 11 <TD ALIGN=right> 9 <TD> 38 : 27 <TD ALIGN=right> 11 <TD ALIGN=right> 53 <TR BGCOLOR="White"> <TD ALIGN=right> 6 <TD ALIGN=right> 6 <TD> SpVgg Unterhaching <TD ALIGN=right> 34 <TD ALIGN=right> 11 <TD ALIGN=right> 16 <TD ALIGN=right> 7 <TD> 35 : 29 <TD ALIGN=right> 6 <TD ALIGN=right> 49 <TR BGCOLOR="White"> <TD ALIGN=right> 7 <TD ALIGN=right> 8 <TD> Eintracht Frankfurt <TD ALIGN=right> 34 <TD ALIGN=right> 13 <TD ALIGN=right> 9 <TD ALIGN=right> 12 <TD> 43 : 46 <TD ALIGN=right> -3 <TD ALIGN=right> 48 <TR BGCOLOR="White"> <TD ALIGN=right> 8 <TD ALIGN=right> 7 <TD> VfB Leipzig <TD ALIGN=right> 34 <TD ALIGN=right> 12 <TD ALIGN=right> 10 <TD ALIGN=right> 12 <TD> 53 : 54 <TD ALIGN=right> -1 <TD ALIGN=right> 46 <TR BGCOLOR="White"> <TD ALIGN=right> 9 <TD ALIGN=right> 11 <TD> KFC Uerdingen 05 <TD ALIGN=right> 34 <TD ALIGN=right> 13 <TD ALIGN=right> 5 <TD ALIGN=right> 16 <TD> 46 : 44 <TD ALIGN=right> 2 <TD ALIGN=right> 44 <TR BGCOLOR="White"> <TD ALIGN=right> 10 <TD ALIGN=right> 9 <TD> SV Meppen <TD ALIGN=right> 34 <TD ALIGN=right> 10 <TD ALIGN=right> 14 <TD ALIGN=right> 10 <TD> 44 : 48 <TD ALIGN=right> -4 <TD ALIGN=right> 44 <TR BGCOLOR="White"> <TD ALIGN=right> 11 <TD ALIGN=right> 13 <TD> Fortuna Köln <TD ALIGN=right> 34 <TD ALIGN=right> 11 <TD ALIGN=right> 9 <TD ALIGN=right> 14 <TD> 52 : 47 <TD ALIGN=right> 5 <TD ALIGN=right> 42 <TR BGCOLOR="White"> <TD ALIGN=right> 12 <TD ALIGN=right> 12 <TD> Carl Zeiss Jena <TD ALIGN=right> 34 <TD ALIGN=right> 9 <TD ALIGN=right> 15 <TD ALIGN=right> 10 <TD> 44 : 49 <TD ALIGN=right> -5 <TD ALIGN=right> 42 <TR BGCOLOR="White"> <TD ALIGN=right> 13 <TD ALIGN=right> 14 <TD> FC Gütersloh <TD ALIGN=right> 34 <TD ALIGN=right> 12 <TD ALIGN=right> 9 <TD ALIGN=right> 13 <TD> 43 : 51 <TD ALIGN=right> -8 <TD ALIGN=right> 42 <TR BGCOLOR="White"> <TD ALIGN=right> 14 <TD ALIGN=right> 10 <TD> FSV Zwickau <TD ALIGN=right> 34 <TD ALIGN=right> 12 <TD ALIGN=right> 6 <TD ALIGN=right> 16 <TD> 34 : 48 <TD ALIGN=right> -14 <TD ALIGN=right> 42 <TR BGCOLOR="Red"> <TD ALIGN=right> 15 <TD ALIGN=right> 15 <TD> SV Waldhof Mannheim <TD ALIGN=right> 34 <TD ALIGN=right> 10 <TD ALIGN=right> 10 <TD ALIGN=right> 14 <TD> 45 : 56 <TD ALIGN=right> -11 <TD ALIGN=right> 40 <TR BGCOLOR="Red"> <TD ALIGN=right> 16 <TD ALIGN=right> 16 <TD> VfB Lübeck <TD ALIGN=right> 34 <TD ALIGN=right> 8 <TD ALIGN=right> 12 <TD ALIGN=right> 14 <TD> 32 : 53 <TD ALIGN=right> -21 <TD ALIGN=right> 36 <TR BGCOLOR="Red"> <TD ALIGN=right> 17 <TD ALIGN=right> 17 <TD> Rot-Weiß Essen <TD ALIGN=right> 34 <TD ALIGN=right> 8 <TD ALIGN=right> 5 <TD ALIGN=right> 21 <TD> 47 : 74 <TD ALIGN=right> -27 <TD ALIGN=right> 29 <TR BGCOLOR="Red"> <TD ALIGN=right> 18 <TD ALIGN=right> 18 <TD> VfB Oldenburg <TD ALIGN=right> 34 <TD ALIGN=right> 6 <TD ALIGN=right> 9 <TD ALIGN=right> 19 <TD> 33 : 67 <TD ALIGN=right> -34 <TD ALIGN=right> 27 </TABLE> ich hoffe mi kann jemand helfen Gruß VR6
  24. VR6

    Firewall

    naja das war mir noch nicht so ganz klar aber in der systemsteuerung unter software finde ich keinen eintrag der mit dem ie7 zu tun hat also muss er ihn ersetzt haben.Aber wie krieg ich den nun ganz von meinem system runter?ich bräuchte ihn eigentlich nicht hab ja mozilla oder ich zieh ihn mir dann noch mal irgendwo aus dem netz herunter.
  25. VR6

    Firewall

    Hallo Leute, ich hab ein Problem.Seit ich heute den IE version7 beta2 installiert hab komm ich mit keinem Browser mehr richtig ins Internet.Ich muss jedes mal meine Firewall ausschalten damit ich ins Inet gelange. Muss ich jetzt ein Backup machen oder kann ich das noch retten? Ich hab übrigens als AntiViren-Software AntiVirenKit - InternetSecurity 2006 Hoffe mir kann jemand helfen. Gruß VR6

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...