Djibril13 Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 Θα ήθελα την βοηθειά σας για την υλοποίηση μίας συνάρτησης που αφορά την κωδικοποίηση καίσαρα... Ζητούμενο είναι να μεταβάλλουμε ένα string σύμφωνα με την κωδικοποίηση του καίσαρα... Πρέπει να κωδικοποιούμε ένα ένα τους χαρακτήρες του string σύμφωνα με τον παρακάτω τρόπο: χαρακτήρας=χαρακτήρας + key το key μας το δίνει ο χρήστης στη main..... π.χ αν ο χαρακτήρας ειναι το γράμμα d και το key είναι το 4 o vέος χαρακτήρας είναι το h....πρέπει να δουλέψουμε πάνω στον κώδικα ascii.... ευχαριστώ προκαταβολικά....
imitheos Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 Θα ήθελα την βοηθειά σας για την υλοποίηση μίας συνάρτησης που αφορά την κωδικοποίηση καίσαρα... Ζητούμενο είναι να μεταβάλλουμε ένα string σύμφωνα με την κωδικοποίηση του καίσαρα... Πρέπει να κωδικοποιούμε ένα ένα τους χαρακτήρες του string σύμφωνα με τον παρακάτω τρόπο: χαρακτήρας=χαρακτήρας + key το key μας το δίνει ο χρήστης στη main..... π.χ αν ο χαρακτήρας ειναι το γράμμα d και το key είναι το 4 o vέος χαρακτήρας είναι το h....πρέπει να δουλέψουμε πάνω στον κώδικα ascii.... ευχαριστώ προκαταβολικά.... Μέχρι που έφτασες ? Επικόλλησε τον κώδικά σου και πες τις απορίες σου.
nspyrou Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 Θα ήθελα την βοηθειά σας για την υλοποίηση μίας συνάρτησης που αφορά την κωδικοποίηση καίσαρα... Ζητούμενο είναι να μεταβάλλουμε ένα string σύμφωνα με την κωδικοποίηση του καίσαρα... Πρέπει να κωδικοποιούμε ένα ένα τους χαρακτήρες του string σύμφωνα με τον παρακάτω τρόπο: χαρακτήρας=χαρακτήρας + key το key μας το δίνει ο χρήστης στη main..... π.χ αν ο χαρακτήρας ειναι το γράμμα d και το key είναι το 4 o vέος χαρακτήρας είναι το h....πρέπει να δουλέψουμε πάνω στον κώδικα ascii.... ευχαριστώ προκαταβολικά.... Και πού είναι το πρόβλημά σου??
bokarinho Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 Θα ήθελα την βοηθειά σας για την υλοποίηση μίας συνάρτησης που αφορά την κωδικοποίηση καίσαρα... Ζητούμενο είναι να μεταβάλλουμε ένα string σύμφωνα με την κωδικοποίηση του καίσαρα... Πρέπει να κωδικοποιούμε ένα ένα τους χαρακτήρες του string σύμφωνα με τον παρακάτω τρόπο: χαρακτήρας=χαρακτήρας + key το key μας το δίνει ο χρήστης στη main..... π.χ αν ο χαρακτήρας ειναι το γράμμα d και το key είναι το 4 o vέος χαρακτήρας είναι το h....πρέπει να δουλέψουμε πάνω στον κώδικα ascii.... ευχαριστώ προκαταβολικά.... http://www.insomnia.gr/forum/showpost.php?p=2422703&postcount=111
Djibril13 Δημοσ. 1 Νοεμβρίου 2010 Μέλος Δημοσ. 1 Νοεμβρίου 2010 Δεν ειναι ολόκληρη η συνάρτηση...μέχρι αυτό το σημείο εχω φτασει και δν μπορω να προχωρήσω.... void ceasar(char String[], int key) { int i; char t; int met; t='Y'-21; printf("%c",t); while (String!='\0'){ if ((String>='A')&&(String<='Z')) { if (key+'String'>='Z') { met=26-key; String=String-'Z'; } } else if (String>='a' && String<='z'){ } } printf("\n %s \n",String); }
drm Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 βάλτη σε [ code ] tags Επίσης, έτσι στα γρήγορα που την βλέπω α) Αρχικοποίηση του i πριν το while (i=0) β) αύξηση του i κάπου μέσα στο while (i++) επίσης το κενό else είναι άχρηστο.
Tompgr Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 Αν καταλαβα καλα το προγραμμα θα εχει σαν εισοδο ενα κειμενο και εναν αριθμο(key) και θα εξαγει το νεο αποκοδικοποιημενο κειμενο, ετσι δεν ειναι?
wakas Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 Αν καταλαβα καλα το προγραμμα θα εχει σαν εισοδο ενα κειμενο και εναν αριθμο(key) και θα εξαγει το νεο αποκοδικοποιημενο κειμενο, ετσι δεν ειναι? Ναι αυτό θέλουμε!
nspyrou Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 > #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string.h> #ifndef BYTE #define BYTE unsigned char #endif int main(void) { BYTE Key = 4; int Index = -1; char MyBuffer[512] = {0}; memset(MyBuffer, 0, 512); memcpy(MyBuffer, "Hello World of C\0", 18); printf("UnEncrypted: %s\n", MyBuffer); while (MyBuffer[++Index] != '\0') { MyBuffer[index] = (MyBuffer[index]+Key) ; } printf("Encrypted : %s\n", MyBuffer); system("pause"); return 0; } Αν κατάλαβα καλά κάτι τέτοιο δεν θες? Προσάρμοσέ το ανάλογα και το έχεις (σου έχω μόνο τη κωδικοποίηση η αποκωδικοποίηση είναι ίδια περίπου) ... κάνε post μόνο τη τελευταία έκδοση για το forum ...
Djibril13 Δημοσ. 1 Νοεμβρίου 2010 Μέλος Δημοσ. 1 Νοεμβρίου 2010 > #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string.h> #ifndef BYTE #define BYTE unsigned char #endif int main(void) { BYTE Key = 4; int Index = -1; char MyBuffer[512] = {0}; memset(MyBuffer, 0, 512); memcpy(MyBuffer, "Hello World of C\0", 18); printf("UnEncrypted: %s\n", MyBuffer); while (MyBuffer[++Index] != '\0') { MyBuffer[index] = (MyBuffer[index]+Key) ; } printf("Encrypted : %s\n", MyBuffer); system("pause"); return 0; } Αν κατάλαβα καλά κάτι τέτοιο δεν θες? Προσάρμοσέ το ανάλογα και το έχεις (σου έχω μόνο τη κωδικοποίηση η αποκωδικοποίηση είναι ίδια περίπου) ... κάνε post μόνο τη τελευταία έκδοση για το forum ... θέλουμε μονο loop και if
Evgenios1 Δημοσ. 1 Νοεμβρίου 2010 Δημοσ. 1 Νοεμβρίου 2010 Θα ήθελα την βοηθειά σας για την υλοποίηση μίας συνάρτησης που αφορά την κωδικοποίηση καίσαρα... Ζητούμενο είναι να μεταβάλλουμε ένα string σύμφωνα με την κωδικοποίηση του καίσαρα... Πρέπει να κωδικοποιούμε ένα ένα τους χαρακτήρες του string σύμφωνα με τον παρακάτω τρόπο: χαρακτήρας=χαρακτήρας + key Αρα με λιγα λογια θες να προσθεσεις ενα key σε ολα τα στοιχεια ενος πινακα. Στη περιπτωση που ο πινακς ειναι ενα c string . Αυτο κυριολεκτικα ειναι μια γραμμη κωδικα, επειδη το c string εχει αρχη και τελος (τα γνωριζουμε). Αρχη ειναι το someString και το τελος ειναι ενας χαρακτηρας που λεγεται nul char (βλεπε wiki) Τεσπα, σε μια γραμμη > void ca(char *str,char key) { [color="Red"]for(; *str != '\0' ; *str += key, str++);[/color] } int _tmain(int argc, _TCHAR* argv[]) { char s[6] = "hello"; ca(s,10); printf("%s\n",s); ca(s,-10); printf("%s\n",s); return 0; } σε δυο >void ca(char *str,char key) { [color="red"]for(; *str != '\0' ; str++) *str += key;[/color] } int _tmain(int argc, _TCHAR* argv[]) { char s[6] = "hello"; ca(s,10); printf("%s\n",s); ca(s,-10); printf("%s\n",s); return 0; } και τελος σε 4 >void ca(char *str,char key) { [color="red"]size_t len = strlen(str); size_t i = 0; for(;i<len;i++) str[i] += key;[/color] } int _tmain(int argc, _TCHAR* argv[]) { char s[6] = "hello"; ca(s,10); printf("%s\n",s); ca(s,-10); printf("%s\n",s); return 0; } Και τελος κατι extreme >void ca(char *str,char key) { for(; *str!='\0';[size="6"] *str+++=key[/size] ); } int _tmain(int argc, _TCHAR* argv[]) { char s[6] = "hello"; ca(s,10); printf("%s\n",s); ca(s,-10); printf("%s\n",s); return 0; }
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.