Szyfr płotkowy nie kompiluje się

Szyfr płotkowy nie kompiluje się
R9
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 23
0

Witam , chcę napisać program który będzie wczytywał po kolei litery od użytkownika np. KRYPTOGRAFIA a potem wypisał go w takiej postaci:
K P G F
R T R I
Y O A A
Nie wiem czy można zrobić to w ten sposób który zrobiłem ponieważ wyrzuca błąd o nazwie: "[Error] subscripted value is neither array nor pointer nor vector".
Czy można wpisać do tablicy dwuwymiarowej wartość jednowymiarowej ?

Kopiuj
#include <stdio.h>
#include <stdlib.h>

int main() {
	int w;
	int i;
	int j;
	char t;
	int wiersz;
	char tab[100];
	char tab1[100];
	printf("Podaj tekst do tablicy");
	for(i=0;i<12;i++){
		scanf("%s",&t);
		tab[i]=t;
	}
	printf("Podaj ilosc wierszy");
	scanf("%d",&wiersz);
	
	for(;i<12;){
		for(j=0;j<wiersz;j++){
			tab1[j][i]=tab[i];         // tu pojawia się problem przy kompilacji 
			i++;
		}
		}
			return 0;
}

!

fasadin
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4883
1

http://4programmers.net/Pomoc/Na_pocz%C4%85tek/Dlaczego_nikt_nie_odpowiada_w_moim_w%C4%85tku

i do tego zdecyduj sie na jeden jezyk. albo C albo C++.
Kompilacja to Twoj najmniejszy problem.

twonek
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2500
2
Kopiuj
char tab1[100];

nie wiem jak Ty, ale ja nigdzie nie widzę tablicy dwuwymiarowej

R9
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 23
0

Dobra poprawiłem już tablicę dwuwymiarową. Po podaniu w konsoli liter , i ilości wierszy program się "crashuje". Jakaś porada ?

Kopiuj
#include <stdio.h>
#include <stdlib.h>

int main() {
	int w;
	int i;
	int j;
	char t;
	int wiersz;
	char tab[100];
	char tab1[100][100];
	printf("Podaj tekst do tablicy");
	for(i=0;i<12;i++){
		scanf("%s",&t);
		tab[i]=t;
	}
	printf("Podaj ilosc wierszy");
	scanf("%d",&wiersz);
	
	for(i=0;i<12;){
		for(j=0;j<wiersz;j++){
			tab1[j][i]=tab[i];
			printf("%s",tab1[j][i]);
			i++;
		}
		}
			return 0;
}

!

twonek
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2500
1

Do wczytywania i wypisywania znaków jest %c a nie %s.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.