Användarprofil

Uppgifter
Användarnamn
Email
Besök -
Hemsida Ingen
Plats (stad)
Senaste besök 01:00 - 1:a Januari 1970
Poster i forumet
Varningar
Grupp
Medlem sedan 01:00 - 1:a Januari 1970
Artiklar och filer
Den här användaren har inga artiklar eller filer

Avatar


Presentation av

Den här användaren har inte skapat någon personlig presentation.

Senaste inläggen i forumet

C++ Hjälp med inlämningsuppgift!
Kan meddela att jag inte behöver hjälp längre^^ Lyckades få hjälp på annat håll =) Fick igång getline med hjälp av en ignore så att rester från innan inte förstörde inmatingen

Postad 20:12 - 16:e April 2010
C++ Hjälp med inlämningsuppgift!
Okej kan bara passa på att skriva att jag skrivit om lite nu och lyckats göra att jag får ett morsetecken att bli till bokstav! =) men jag behöver fortfarande en funktion för att läsa in en hel sträng =) Om någon har några funktioner jag kan testa?

cin >> variabel; ger bara ett ord så den går inte ;P

getline(cin, variabel); funkar inte i visual studio som sagt... å fgets kan ja inte använda för ja har användt mig av string så att jag i princip dödat den x) (biblioteken som man tar med för string gör att fgets inaktiveras) =P

Men iaf, är det någon som kan hjälpa mig med att komma på några kreativa funktionsinläsningar som smiter igenom Visual studios barriärer? =)

Postad 17:06 - 16:e April 2010
C++ Hjälp med inlämningsuppgift!
Ja som rubriken lyder behöver ja hjälp, jag har i princip skapat en hel kod själv och lekt i en vecka nu men allt funkar inte riktigt som det ska...

Uppgiften går ut på att skapa ett program som översätter vanlig text till morsekod och vise versa. Jag klarade av att skapa delen av programmet som översätter text till morse, men andra hållet blev betydligt svårare eftersom jag inte riktigt vet hur jag ska läsa in morse texten... Saken är ju den att jag tar in en väldans massa tecken som måste säras med whitespace, och därmed skapa "ord"(morse bokstäverna) som jag dessutom vill kunna lagra i variabler som jag sedan kan använda en pekare till att koppla de samman å skriva ut den bokstav jag vill. Men det lät lättare än vad det var... >< Sen så har jag problemet att jag använder Visual studio med där de vanliga getline funktionerna etc inte funkar vilket dessutom gör det svårt att läsa in denna strängen överhuvudtaget... -.- (vanlig cin tar ju bara upp till första mellanslaget men inget mer)
Iaf... jag postar den kod jag har, vilket ni kommer märka flummar till rejält när den kommer till andra delen av programmet.... Hur som helst är jag tacksam för all hjälp!

Posta gärna inte "använd dig av blabla" etc för tro mig ja har sökt och kollat alla metoder och de som finns klarar jag liksom inte använda om jag inte först förstår dem, vilket är varför jag frågar här... Så om det är en metod ni föreslår visa gärna hur den funkar så jag vet hur man använder den xD


#include <iostream>
#include <string.h>
#include <stdio.h>
#include <ctype.h>
#include <vector>
#include <sstream>
using namespace std;

int main()
{
    int i, k;
    int L;
    int trans;

printf("Vad vill du göra?n"
         "(1) Översätta till morsen"
         "(2) Översätta från morsen"
         "(3) Avsluta programmetnn");

    cin >> trans;
    
    if (trans == 1)

    {
        
         char alph[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

     char *morse[] = {
         ".-","-...","-.-.","-..",".", // a-e
         "..-.","--.","....","..",".---", // f-j
         "-.-",".-..","--","-.","---", // k-o
         ".--.","--.-",".-.","...","-", // p-t
         "..-","...-",".--","-..-","-.--", // u-y
             "--.."}; // z

     char text[100];

     int antboks = strlen(alph);

         printf("nnSkriv det meddelande du vill ska översättas:nn");
cin >> text;

L = strlen(text) - 1; // L = antal tecken meddelandet innehållet

for (i = 0; i < L; i++) {
text[i] = toupper(text[i]); // Gör så att det inte spelar nån roll om man skriver
} // med stora eller små bokstäver, små bokstäver = stora
for (i = 0; i < L; i++) { // söker igenom texten efter tecken, dock är if satsen här
if (text[i] == ' ') // onödig för tillfället då det inte kommer finnas med mer
printf(" "); // än ett ord, men hade annat bibliotek innan bara det att
         // jag inte kunde använda det när string kom med i koden...
     else
for (k = 0; k <= antboks; k++) {
             if (text[i] == alph[k]) {
printf("%s ", morse[k]);
                         break;
             }}
         }
    }
    else if (trans == 2) //Härifrån och nedåt är det problemen börjar...
    {
     string morse[] = {
         ".-","-...","-.-.","-..",".", // a-e
         "..-.","--.","....","..",".---", // f-j
         "-.-",".-..","--","-.","---", // k-o
         ".--.","--.-",".-.","...","-", // p-t
         "..-","...-",".--","-..-","-.--", // u-y
             "--.."}; // z

         char *alph[] = {"A","B","C","D","E","F",
             "H","I","J","K","L","M","N","O","P",
             "Q","R","S","T","U","V","W","X","Y","Z"};
        
     char text2[100];

     int antboks = 25;

         printf("nnSkriv det meddelande du vill ska översättas:nn");
cin >> text2;
            
         string kopi; //Förmodligen ingen logik i dessa men det är det
stringstream ss(text2); //närmaste jag kommit, tror det skulle kunna funka
//men jag behöver kunna koppla det till funktionerna
vector<string> tokens;

while (ss >> kopi)
tokens.push_back(kopi);

L = strlen(text2) - 1;

for (i = 0; i < L; i++) {
text2[i] = toupper(text2[i]);
}
for (i = 0; i < L; i++) {
if (text2[i] == ' ')
printf(" ");
        
     else
for (k = 0; k <= antboks; k++) {
             if (text2[i] == morse[k]) {
printf("%s", alph[k]);
                     break;
             }}
         }
    }

return 0;
}


Förlåt på efterhand om det ser grymt rörigt ut....

Postad 12:23 - 16:e April 2010

Skicka meddelande
Läs s blog