Wörter suchen und zählen in der Programmiersprache C

Hallo, Wir müssen als Aufgabe ein Programm in der Programmiersprache C schreiben, dass von einem Textdokument mit beliebigen Inhalt ein Bestimmtes Wort oder einen Bestimmten Buchstaben in einem Wort sucht und zählt wie viele gleiche Wörter bzw gleiche Buchstabenfolge hintereinander in diesem Textdokument sind. Ich habe da schon einen Anfang gemacht, der allerdings nur ein Wort in einer Zeile zählt und dann einfach in die nächste geht:

include <stdio.h> include <conio.h> include <string.h> include <stdlib.h> include <time.h>

char *self_strstr(char *text,char *suche);

int main(int argc, char **argv) { //Variablen FILE *fp; char zeile[100], worte[100]; int n=0, i=0;

//Startet die Ticks
clock();


//Programmablauf
fp = fopen(argv[1], "rt");
while(fgets(zeile, sizeof(zeile), fp) != NULL)
    if (self_strstr(zeile, argv[2]) != NULL)
        n++;
fclose(fp);

//Ausgabe
printf("Anzahl des gesuchten Wortes: %d\n", n);
printf("Ticks: %d", clock());
return 0;

}

char *self_strstr(char *text, char *suche) { int i=0; int j=0; int suche_size; suche_size = strlen(suche); while(text[i] != '\0' && suche_size != 0) { if(text[i]==suche[j]) { suche_size--; j++; } else { suche_size = strlen(suche); j = 0; i=i-j; // hüpfe zum zu letzt Verglichenen Feld von String text } i++; } if (suche_size == 0) return i; else return NULL; }

ich hoffe ihr könnt mir bei helfen es weiterzuschreiben.

Programm, programmieren, Java, CPP, PHP, Python
Eclipse Taschenrechner

Guten Tag ich versuche mit Eclipse Juno einen Taschenrechner zu erstellen bin aber mit meinem jetzigen Javawissen am Ende. Ich programmiere noch nicht lange Kann mir jmd. helfen???

Quellcode:

Start.java:

public class Start {

static Fenster f;

public static void main(String[] args) {

    f=new Fenster("Fensterprogramm",800,600);

}

}

Fenster.java:

import java.awt.Button; import java.awt.Frame; import java.awt.Label; import java.awt.TextField; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener;

public class Fenster extends Frame implements WindowListener, ActionListener{

Button Ba,Bs,Bm,Bd,Erg;
TextField T1,T2,T3;
Label L0;

public Fenster(String titel, int breite, int hoehe) {

    this.setTitle(titel);
    this.setSize(breite,hoehe);
    this.setLayout(null);

    Ba = new Button("+");
    Ba.setLocation(150,30);
    Ba.setSize(20,20);
    this.add(Ba);

    Bs = new Button("-");
    Bs.setLocation(150,60);
    Bs.setSize(20,20);
    this.add(Bs);

    Bm = new Button("*");
    Bm.setLocation(150,90);
    Bm.setSize(20,20);
    this.add(Bm);

    Bd = new Button(":");
    Bd.setLocation(150,120);
    Bd.setSize(20,20);
    this.add(Bd);

    T1 = new TextField(20);
    T1.setLocation(50,75);
    T1.setSize(75,20);
    this.add(T1);

    T2 = new TextField(20);
    T2.setLocation(195,75);
    T2.setSize(75,20);
    this.add(T2);

    Erg = new Button("=");
    Erg.setLocation(295,75);
    Erg.setSize(20,20);
    this.add(Erg);




    this.addWindowListener(this);
    this.setVisible(true);

}

@Override
public void actionPerformed(ActionEvent e1) {
    if (e1.getSource() == Ba) {
        if (e1.getSource() == Erg) {
            System.out.println(Integer.parseInt(T1.getText()) + Integer.parseInt(T2.getText()));
        }
    }

}

@Override
public void windowActivated(WindowEvent arg0) {
    // TODO Auto-generated method stub

}

@Override
public void windowClosed(WindowEvent arg0) {
    // TODO Auto-generated method stub

}

@Override
public void windowClosing(WindowEvent arg0) {
    System.exit(0);

}

@Override
public void windowDeactivated(WindowEvent arg0) {
    // TODO Auto-generated method stub

}

@Override
public void windowDeiconified(WindowEvent arg0) {
    // TODO Auto-generated method stub

}

@Override
public void windowIconified(WindowEvent arg0) {
    // TODO Auto-generated method stub

}

@Override
public void windowOpened(WindowEvent arg0) {
    // TODO Auto-generated method stub

}

}

programmieren, Java, Eclipse, Taschenrechner
Oracle-PLSQL: Daten aus XML-Datei in die Datenbank einlesen - wie?

Hallo, ich habe ein Programm welches eine XML-Datei exportiert. Ich benötige diese XML, da sie zur "Weiterverarbeitung" zu einer Fremdfirma geschickt wird, die den Inhalt der Tags verändert ( die Tags selbst bleiben bestehen, also "ich weiß, was mich erwartet, wenn die XML eingelesen werden soll" ). Nunja. Den Export habe ich über DBMS-XMLGEN.getXML gelöst, das "Ergebnis" speichere ich einem CLOB und schreibe das File anschließend auf den Server. Um das Ding danach auf den Client zu holen habe ich in meiner Forms Anwendung eine Schleife, die über UTF-FILE jede Zeile einzeln von der Datei auf dem Server liest und diese Zeile dann über TEXT-IO auf dem Client in eine Datei schreibt. Jetzt ist wie gesagt das Problem, das Einlesen zu bewerkstelligen. Im moment ist es so, dass ich das File zwar einlesen kann, dann hab ich es wieder in einem CLOB, aber hilft mir ja nicht sonderlich viel, ich brauche ja den Inhalt der Tags um diesen Inhalt dann in den Feldern meiner Datenbank zu speichern.. Ich bin ziemlich am Verzweifeln. Also ich denke ganz ehrlich, den Stand wie er jetzt ist (also dass die XML-Datei auf dem Server gespeichert ist ) ist ok so, ich habe halt nur wirklich garkeine Idee wie ich den Inhalt der Tags rausbekommen kann. Ich habe schon viel gegooglet, aber leider noch nichts wirklich brauchbares gefunden, vielleicht kann mir ja hier jemand wenigstens ein Schlagwort für einen Lösungsansatz nennen?!

Ich habe eine Oracle 11g R1 Datenbank im Hintergrund, OS vom Server weiß ich leider nicht, nur dass es eine Linux-Kiste ist.

Computer, SQL, programmieren, Oracle
C++ String mit samt leerzeichen einlesen!?

Hallo zusammen. Ich möchte jetzt in einem c++ programm einen, bzw. mehrere strings MIT leerzeichen einlesen. Mit cin >> xyz geht es ja definitiv nicht. mit getline(cin, xyz) soll es ja wohl gehen. doch habe ich da folgendes problem: die eingabe für die variable, also die mit getline aufgerufen wird WIRD EINFACH ÜBERSPRUNGEN!!! Hier der Code. Bitte helft mir danke schonmal

cout << "Welcome to C++ Filecompiler using G++ !\nThis app is proudly presented by Armin Linzbauer, Copyright 2012." << endl;
cout << "\nFirst, this app is going to collect some basic information...\n(Write paths ALWAYS in quotationmarks!!!\n" << endl;

cout << "\nName of source file, type 0 for standard (\"main.cpp\") -" << "\nName: ";
cin >> sourceName;

cout << "Source path (must end with a slash), type 0 for standard (this directory) -" << "\nPath: ";
getline(cin, sourcePath);
//cin >> sourcePath;

cout << "Name target file here, type 0 for standard (\"app\") -" << "\nName: ";
cin >> targetName;

cout << "Target path (must end with a slash), type 0 for standard (this directory) -" << "\nPath: ";
getline(cin, targetPath);
//cin >> targetPath;

cout << sourceName << "; " << sourcePath << "; " << targetName << "; " << targetPath << endl;
cout << matchedSource << endl;
cout << matchedTarget[1] << endl;
cout << matchedTarget[0] << endl;
cout << matchedSrcTgt << endl;

sorry für die &lt und &gt... ich weiß net wie ich die wegbekomme hier im editor!

Computer, Linux, Programm, programmieren
Website Programmierung Frontend - Backend Programmiersprache

Hallo alle zusammen,

mich interessiert neuerdings im Bereich der Programmierung das Thema: Welche Programmiersprache für eine dynamische Website? Wenn ich zum Beispiel ein Forum auf einer Website entwickeln möchte, oder NOCH größere Programme, dann interessiert es mich, was man da für Sprachen benutzten könnte.

Außerdem habe ich mitbekommenm, das bei vielen größeren online-Diensten ein Unterschied der Programmierung beim frontend und beim backend besteht. Zum Beispiel habe ich von der Kobination:

Zur Ausgabe der Daten auf der Website(Frontend) --> Phyton Zur Programmierung im Hintergrund(Backend) --> C++

gelesen. Jetzt frage ich mich dazu wiegesagt, welche Programmiersprache für Frontend, und welche für das Backend gut geeignet ist, ich habe mich ein bisschen umgeschaut, und bin zu mehreren Sprachen für das jeweilige End gekommen:

Frontend: -PHP -Phyton -ASP

Backend: -C -C++ -Java

Ihr könnt ja mal ein paar Vorschläge mit euren Meinungen schicken, welche Sprachen in welchen Kombinationen man für größere Website-Projekte gebrauchen kann. Auch wichtig wäre mir, was ich mich auch schon öfters gefragt habe, warum überhaupt eine Programmiersprachen-Unterscheidung zwischen Front- und Backend herrschen muss. Darüber bin ich mir auch noch nicht ganz im Klaren.

Also, ich bitte bitte bitte euch um eure Unterstützung für die Beantwortung meiner Fragen, weil es mir wirklich TOTAL wichtig wäre. Und es mir wirklich interessieren würde.

Ich danke euch allen schonmal im Voraus,

mit vielen Grüßen Ichfragewas

Internet, Webseite, programmieren, Meinung, Programmiersprache, Projekt, Vorschlag, Backend, Frontend
Bücher für 13 jährige zum erlernen von Programmierung mit Java

Moin,

Meine Nichte ist 13 und möchte gerne Spieleentwicklerin werden, wenn sie mal groß ist, wie sicher, dieser Berufswunsch ist, weiss ich natürlich nicht, aber sie redet schon seit einigen Jahren von dem Berufswunsch.

Ich möchte Sie dabei natürlich gerne unterstützen, da ich aber in einem Komplett anderen Bereich studiere, habe ich keine signifikante Ahnung von der Materie.

Deshalb dachte ich mir, ich schenke ihr zum Einstieg Bücher zur Programmierung mit Java. Weil es aus Sicht von mir als Laie einfacher erscheint als C++ und vielleicht auch ergebnisschneller.

Ich habe nun zwei Bücher gefunden, die kompetent zu sein scheinen: "Java will nur spielen: Programmieren lernen mit Spaß und Kreativität: Programmieren lernen mit Spaß und Kreativität." von Panitz. "Grundkurs Computergrafik mit Java: Die Grundlagen Verstehen und Einfach Umsetzen Mit Java 3D (German Edition): Die Grundlagen verstehen und einfach umsetzen mit Java 3D." von Klawonn

Mich würde interessieren, ob ihr diese Bücher empfehlen würdet, auch mit Bedacht das meine Nichte noch sehr jung ist und vielleicht nicht jede Fachterminologie versteht.

Auch würde mich interessieren, ob ihr andere Bücher empfehlen könnt, bzgl. Java oder ob ihr vielleicht zum Einstieg noch simplifizierter erstmal HTML Bücher verschenken würdet ( Sie spricht bisher keine Programmiersprache).

Vielen Dank für eure Hilfe.

Computer, programmieren, Java, Informatik, Spieleentwicklung
Streifen bei Laptop via HDMI zu Fernseher

Hallo!

Ich bin mittlerweile am Verzweifeln. Endlich ist mein neuer Fernseher da! Lange erwartet und nix funktioniert Zuerst schmierte das Gerät ständig ab, dann habe ich es ausgetauscht und nun machen horizontale Streifen bei Filmen via Laptop alles zunichte.

Ich habe folgenden Fernseher:

LG 42LW4500 107 cm (42 Zoll) Cinema 3D LED-Backlight-Fernseher, Energieeffizienzklasse B (Full-HD, 400Hz MCI, DVB-T, DVB-C, CI+) LED-TV mit LG CINEMA 3D, 107 cm (42 Zoll) Bildschirmdiagonale, DivX HD, Full HD Auflösung 1920 x 1080 Pixel, Tru Motion 100Hz garantiert höchste Genauigkeit in 2D und 3D Bildern Unsichtbare Lautsprecher zur optimalen Wiedergabe, Clear Voice II und Infinite Surround DVB-T/-C Empfang, 3 HDMI 1.4-Anschlüsse, USB 2.0-Anschluss sowie CI+ Modulslot, Energieeffizienz durch Smart Energy Saving (Plus)

und folgenden Laptop:

Prozessor: Intel Core i7-2630QM Grundtakt: 2,0GHz Turbotakt: 2,9 GHz Prozessor - Fertigung: 32 nm L3-Cache: 6 MB Chipsatz: Intel QM67 Arbeitsspeicher: 8 GB - DDR 3 Grafikkarte: NVIDIA GeForce GT 555M Grafikkarte - Grafikspeicher: 2 GB Festplatte: 2x 750 GB Festplatte - Geschwindigkeit: 5400 rpm Bildschirm: 17.3 Zoll, 16:9, 1920x1080 Pixel

Zuerst dachte ich es liegt am billigen HDMI Kabel, aber nun habe ich mir dieses HDMI Kabel noch zusätzlich gekauft:

Vivanco High Quality High Speed HDMI® Kabel mit Ethernet (PRO HDHD 1.4, Metallstecker, 4fach Schirmung) 3m Hochwertiger Vollmetallstecker für optimale Abschirmung und perfekte Haptik, 24 Karat vergoldete Kontaktflächen für optimale Leitfähigkeit, Kabeloberfläche aus geflochtenem Nylon in Karbon Optik Innenleiter aus sauerstofffreiem Kupfer (OFC), Für Datenraten von bis zu 10,2Gbps --> HIGH SPEED HDMI® Ethernet Kanal (HEC) mit bis zu 100MB/s, Audio Rückkanal (ARC) 3D via HDMI® bis maximal 1080p im Dual Stream Modus 4K - Für maximale Auflösungen von 4096 x 2160 Pixeln bei 24Hz, Alle gängigen Tonformate bis hin zu TrueHD und dts-HD

Und das Problem tritt immernoch auf:

Bei egal Welchem Film den Ich via HDMI Kabel auf den Fernseher übertrage ziehen sich entweder horizontale Streifen durch das Bild oder aber die obere Hälfte ist versetzt zur unteren.

Ich benutze als Media Player der VLC Media Player. Auf dem Laptop sind die Streifen nicht erkennbar und bei normalem Antennen TV auch nicht.

Bitte helft mir!

Viele Grüße Effect

Computer, Software, Technik, Elektronik, programmieren, HiFi
Wörterbuch programmiern in C

Hallo. :)

Ich hoffe von euch kann mir jemand meinen Fehler sagen. Ich soll nämlich ein Wörterbuch programmiern und wenn ich ein Wort eingeben, das ich in der Datenbank schon eingespeichter habe, funktioniert alles. Aber, wenn ein Wort kommt, dass noch nicht gespeichert ist, schmeißts mich immer raus. >.> ...eigentlich sollte eine Anfrage kommen, ob man das Wort speichern will...

also hier mal das Programm:

include<stdio.h> include<conio.h> include<string.h> define MAX 100

typedef struct woerterbuch {

char wort[30+1];
char word[30+1];

}Buch;

void main() { int i=0; char search[20]; char suchen[20]; int zahl, gefunden=1, x=0; Buch liste[MAX]={"Hallo", "hello", "Auto", "car", "Sonne", "sun"};

printf("Geben Sie ein, ob Sie von Englisch auf Deutsch (1) oder von Deutsch auf Englisch (2) uebersetzen wollen! ");
scanf("%d", &zahl);

if(zahl==1)
{
    printf("\nGeben Sie ein englisches Wort ein, das Sie uebersetzen wollen! ");
    scanf("%s", search);

    do
    {   
        if(strcmp(search, liste[i].word)==0)
        {
            printf("Deutsch: %s ", liste[i].wort);
            x=1;
            gefunden=0;
        }

        i++;

    }while(x!=1);

    if(gefunden==1)
    {
        printf("\nIhr Wort ist nicht in der Datenbank enthalten!");
        /*printf("\nWenn Sie das Wort in die Datenbank hinzufügen wollen, drücken sie 1.");
        scanf("%d", add);

        if(add==1)
        {
            printf("Das deutsche Wort: ");
            scanf("%s", liste[i+1].wort);

            printf("Das englische Wort: ");
            scanf("%s", liste[i+1].word);
        }*/
    }
}

else
{
    printf("\nGeben Sie ein deutsches Wort ein, das Sie uebersetzen wollen! ");
    scanf("%s", suchen);

    do
    {   
        if(strcmp(suchen, liste[i].wort)==0)
        {
            printf("Englisch: %s ", liste[i].word);
            gefunden++;
            x=1;
        }
    i++;

    }while(x!=1);

    if(gefunden==1)
    {
        printf("\nIhr Wort ist nicht in der Datenbank enthalten!");
    }
}

getch();

}

Vielleicht kann mir hier jemand helfen. ? :)

Danke, schonmal im voraus. :)

P.S: und bitte keine Kommentare zum Stil oder sonst was...bin nicht das größte Genie im Programmiern, das weiß ich selber. :)

programmieren, Visual Studio
Taschenrechner programmieren mit C (Double und Nachkommastellen)

Ich hab angefangen einen Taschenrechner mit C zu programmieren und so sieht es bis jetzt aus


#include "stdlib.h"
#include "math.h"
#include "string.h"
#include "stdio.h"

int main(int argc, char *argv[])
{

int Zahl1;
int Zahl2;
int Gesamt;
int Merker;                                     
int Laenge;
int Stelle;


char Eingabe_Zahl1[100];                                     
char Eingabe_Zahl2[100];                                      
char Rechenzeichen[100];                              

ANFANG:                                                                                          

gets(Rechenzeichen);    

Merker = 0;

if (Rechenzeichen[0]=='+') Merker = 1;    

if (Rechenzeichen[0]=='-') Merker = 1;   

if (Rechenzeichen[0]=='*') Merker = 1;   

if (Rechenzeichen[0]=='/') Merker = 1;

if (Merker == 0) printf("Hier duerfen nur Rechenzeichen stehen!\n");                                  
if (Merker == 0) printf("\n");
if (Merker == 0) goto ANFANG;


gets(Eingabe_Zahl1);   

Laenge=strlen(Eingabe_Zahl1);

//printf("%d Zeichen\n", Laenge);

Stelle = 0 ;

PRUEF_ZAHL1:

Merker = 0 ;

if (Eingabe_Zahl1[Stelle]== '0') Merker = 1;    

if (Eingabe_Zahl1[Stelle]== '1') Merker = 1;   

if (Eingabe_Zahl1[Stelle]== '2') Merker = 1;   

if (Eingabe_Zahl1[Stelle]== '3') Merker = 1;

if (Eingabe_Zahl1[Stelle]== '4') Merker = 1; 

if (Eingabe_Zahl1[Stelle]== '5') Merker = 1; 

if (Eingabe_Zahl1[Stelle]== '6') Merker = 1; 

if (Eingabe_Zahl1[Stelle]== '7') Merker = 1; 

if (Eingabe_Zahl1[Stelle]== '8') Merker = 1; 

if (Eingabe_Zahl1[Stelle]== '9') Merker = 1; 

if (Merker == 0) printf("Hier duerfen nur Zahlen stehen!\n");
if (Merker == 0) printf("\n");
if (Merker == 0) goto ANFANG;           

Stelle=Stelle +1;
if (Laenge != Stelle) goto PRUEF_ZAHL1;

printf("Bitte geben Sie die zweite Zahl ein   : ");       
gets(Eingabe_Zahl2);                                          

Laenge=strlen(Eingabe_Zahl2);

//printf("%d Zeichen\n", Laenge);

Stelle = 0 ;

PRUEF_ZAHL2:

Merker = 0 ;

if (Eingabe_Zahl2[Stelle]== '0') Merker = 1;    

if (Eingabe_Zahl2[Stelle]== '1') Merker = 1;   

if (Eingabe_Zahl2[Stelle]== '2') Merker = 1;   

if (Eingabe_Zahl2[Stelle]== '3') Merker = 1;

if (Eingabe_Zahl2[Stelle]== '4') Merker = 1; 

if (Eingabe_Zahl2[Stelle]== '5') Merker = 1; 

if (Eingabe_Zahl2[Stelle]== '6') Merker = 1; 

if (Eingabe_Zahl2[Stelle]== '7') Merker = 1; 

if (Eingabe_Zahl2[Stelle]== '8') Merker = 1; 

if (Eingabe_Zahl2[Stelle]== '9') Merker = 1; 

if (Merker == 0) printf("Hier duerfen nur Zahlen stehen!\n");
if (Merker == 0) printf("\n");
if (Merker == 0) goto ANFANG;           

Stelle=Stelle+1;
if (Laenge != Stelle) goto PRUEF_ZAHL2;

Zahl1=atoi(Eingabe_Zahl1);                                    
Zahl2=atoi(Eingabe_Zahl2);                                    

if (Rechenzeichen[0]=='+') Gesamt = Zahl1 + Zahl2;    

if (Rechenzeichen[0]=='-') Gesamt = Zahl1 - Zahl2;   

if (Rechenzeichen[0]=='*') Gesamt = Zahl1 * Zahl2;   

if (Rechenzeichen[0]=='/') Gesamt = Zahl1 / Zahl2;

printf("Das Ergebnis lautet                   : %d\n" ,Gesamt);
printf("\n");           

goto ANFANG;                            

Ich weiß goto und atoi und sowas ist doof aber darum geht es jetzt nicht.
WEnn man bei diesem Rechner die Zahl 2147483647 eingibt und dann +1 rechnet
kommt - 2147483647 raus.
Man macht das anscheind mit double aber irgendwie verteh ich das nicht und außerdem kann dieser Rechner keine Kommazahlen berechnen.
Wäre nett wenn jemand der das versteht mir helfen könnte.
DAnke

Computer, programmieren, Taschenrechner, C (Programmiersprache), double, nachkommastellen

Meistgelesene Beiträge zum Thema Programmieren