Witam.
Mam problem z programikiem:P
tz, chodzi o to ze chcĘ, aby tekst ktory napisze w konsoli, byl szyfrowany i zapisany do pliku pod jakas nazwa, i aby byla mozliwosc odszyfrowania tekstu ktory jest juz zaszyfrowany w pliku.
Chyba byloby ok, gdyby nie to ze funkcje szyfrujace mam w osobnym pliku implementacyjnym..
poza tym nie wiem czy dobrze napisalem kod przy szyfrowaniu poniewaz program nie chce sie skompilowac^

moglobyscie rzucic okiem?

plik unit.cpp

 //---------------------------------------------------------------------------
#include<stdio.h>
#include<iostream.h>
#include<string.h>
#include<math.h>
#include<conio.h>

#include "cezar.h"

#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused


int acase (){
 int b;
 bool case2=true;
           do{
            printf("\n1.Chcesz zaszyfrowac tekst?\n");
            printf("\n2.Chcesz odszyfrowac tekst?\n");
            scanf("%d", &b);
            switch(b){
             case 1:
              case2=false;
              break;
             case 2:
              case2=false;
              break;
             default:
              printf("Miales podac 1 lub 2!");
              case2=true;
            }
           }while(case2);
 return b;
}


int main(int argc, char* argv[])
{
 int a, c;
 bool case1=true;
 FILE *plik;
 do{
         printf("Jaki szyfr Cie interesuje?\n");
         printf("1. Szyfr Cezara\n");
         printf("2. Szyfr podstawienny\n");

         printf("3. Zakoncz Aplikacje\n\n");
         scanf("%d", &a);

         switch(a){
          case 1 :
           clrscr();
           printf("\nWybrales szyfr Cezara.\n");
           c=acase();
           if (c==1) cezar_szyfr();
           else cezar_oszyfr();
           getch();
           clrscr();
           break;
          case 2 :
           printf("");

           getch();
           clrscr();
           break;
          case 3 :
           case1=false;
           break;
          default :
           printf("Miales podac cyfre od 1 do 3!");
           getch();
           clrscr();
         }
        } while(case1);

 getch();
 return 0;
}



//---------------------------------------------------------------------------
 

plik cezar.h

#ifndef _cezar_h_
#define _cezar_h_

void cezar_szyfr();

void cezar_oszyfr();

#endif

plik cezar.cpp

#include "cezar.h"
#include<stdio.h>
#include<iostream.h>
#include<string.h>



void cezar_szyfr(){
 FILE *plik;
 string text, nazwa_pliku;
 printf("Podaj nazwe pliku do ktorej chcesz zapisac sane: ");
 scanf("%s", nazwa_pliku);
 printf("Podaj tekst ktory chcesz zaszyfrowac: ");
 scanf("%s", text);
 double dlugosc=text.length();
 int i=0;

 plik = fopen(nazwa_pliku, "w+");     // tu powinien otwierac sie plik o.O

 while(i<=dlugosc){
  if ((text[i]>=65)&&(text[i]<=90))
  {
   text[i]-=65;
   text[i]+=3;
   text[i]=fmod(text[i],26);  //operacja ta potrzebna jest aby przykladowo litera z szyfrowana byla jako c a nie jako znaczek o nr o 3 wiekszym w tablicy ASCII
   text[i]+=65;
   fprint(plik, text[i]);
  }
  else if ((text[i]=97)&&(text[i]=122))
  {
   text[i]-=97;
   text[i]+=3;
   text[i]=fmod(text[i],26);
   text[i]+=97;
   fprint(plik, text[i]);
  }
  else if ((text[i]>=48)&&(text[i]<=57))
  {
   text[i]-=48;
   text[i]+=3;
   text[i]=fmod(text[i],10);
   text[i]+=48;
   fprint(plik, text[i]);
  }
  i++;
 }
 fclose(plik);
}

void cezar_oszyfr(){
 FILE *plik;
 string text, nazwa_pliku;
 printf("Podaj nazwe pliku z ktorego chcesz rozszyfrowac dane: ");
 scanf("%s", nazwa_pliku);
 string text;
 int i=0;

 plik = fopen(nazwa_pliku, "r")

 while((text[i]=getc(plik))!=EOF)
 {
  if ((text[i]>=65)&&(text[i]<=90))
  {
   text[i]-=65;
   text[i]-=3;
   if (text[i]<0)
   text[i]=26-fabs(text[i]); //potrzebne jest obliczenie wartosci bezwzglednej, gdyz po odejmowaniu mozemy otrzymac wartosc ujemna
   text[i]+=65;
  }
  else if ((text[i]>=97)&&(text[i]<=122))
  {
   text[i]-=97;
   text[i]-=3;
   if (text[i]<0)
   text[i]=26-fabs(text[i]);
   text[i]+=97;
  }
  else if ((text[i]>=48)&&(text[i]<=57))
  {
   text[i]-=48;
   text[i]-=3;
   if (text[i]<0)
   text[i]=10-fabs(text[i]);
   text[i]+=48;
  }
  i++;
 }
 fclose(plik);
}

bardzo prosze o pomoc