128개 station 까지 확장...
날샘
질문 제목 : 이 코드에서 128 개까지 2차원 배열 만들려면 어떻게해야되나요 ?2~64개의 station 만 만들어지는데 전 최대 100까지 필요해서 128개의 station 을 입력받아야하는데
어떻게 해야될까요..?
질문 내용 :tx 입력을 100이상 그러니까 128 을 받고 싶은데 64까지 밖에 안되는군요 어떻게 해야될까요 ?
음. .일단 퍼온거구요... 프로그래밍에대한 수업도 아닌대 프로그래밍 과제를 내주셔서 많이 힘들군요 ㅠㅠ..
씨는 기본정도 밖에 모릅니다.. ㅠㅠ
#include stdio.h
#include string.h
#include stdlib.h
#include malloc.h
#include math.h
void main(void) /* 메인 함수 */
{
int i, j, k, l, m, n; /* 정수형 변수 선언 */
int tx, len, row, a, b; /* 정수형 변수 선언 */
int** data; /* data 2차원 포인터 변수 선언 */
int** walsh; /* walsh 2차원 포인터 변수 선언 */
int w2[2][2]; /* 2*2 배열 선언(walsh 2단 저장) */
/* transmitter(user)와 data 길이 입력 */
printf(******* ds-cdma *******\n\n); /* 출력 */
printf(input transmitter (range: 2-128): ); /* 출력 */
scanf(%d, &tx); /* tx(user)를 입력 받음(2~64) */
printf(\ninput data lenth : ); /* 출력 */
scanf(%d, &len); /* data의 길이를 입력 받음 */
/* walsh code generator */
w2[0][0]=1; /* 기본적으로 2단 walsh code를 배열에 저장 */
w2[0][1]=1; /* walsh 2단을 바탕으로 kronecker product를 사용하여 walsh code 생성 */
w2[1][0]=1;
w2[1][1]=-1;
a = (int)(log((double)tx)/log((double)2)); /* log(2)tx의 값을 a에 집어넣음 */
if(pow((double)2,(double)a)==tx) /* tx의 수가 2^n과 같을 경우 */
{
n=a; /* n에 a의 값을 집어넣음 */
row = (int)(pow((double)2,(double)n)); /* row(walsh 단수)에 2^n을 집어 넣음 */
}
if(pow((double)2,(double)a)!=tx) /* data수가 2^n과 다를 경우 */
{
n=a+1; /* n에 a한 값을 넣어준다 */
row = (int)(pow((double)2,(double)n)); /* row(walsh 단수)에 2^n을 집어 넣음 */
}
printf(\nwalsh table : w%d table\n , row); /* 출력 */
walsh = (int**)malloc(sizeof(int*)*row); /* row 행의 walsh 동적 배열 생성 */
for(i=0; irow; i++) /* row 동안 반복 */
{
walsh[i] = (int*)malloc(sizeof(int)*row); /* 각 행마다 row 만큼의 열 생성 */
}
for(i=0; i2; i++) /* 2번 반복 */
{
for(j=0; j2; j++) /* 2번 반복 */
{
walsh[i][j]=w2[i][j]; /* walsh code에 기본 2단 배열을 집어넣음 */
}
}
m=1; /* m=1로 초기화 */
while( m log((double)row)/log((double)2)) /* m이 log(2)row 보다 작을때 까지 반복 */
{
b = (int)pow((double)2,(double)m); /* temp2 */
for(k=0; k2; k++) /* 2번 반복(기본 walsh code가 2단임) */
{
for(l=0; l2; l++) /* 2번 반복(기본 walsh code가 2단임) */
{
for(i=0; ib; i++ ) /* b 동안 반복 */
{
for(j=0; jb; j++) /* b 동안 반복 */
{
walsh[k*b+i][l*b+j]=w2[k][l]*walsh[i][j]; /* kronecker product를 이용해서 walsh code 생성 */
}
}
}
}
m++; /* m을 1씩 증가 시킴 */
}
for(i=0;irow;i++) /* row 동안 반복 */
{
for(j=0;jrow;j++) /* row 동안 반복 */
{
printf(%4d,walsh[i][j]); /* walsh code 출력 */
}
printf(\n); /* 한줄 밑으로 내림 */
}
}
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2685477 | 소수점이하 출력하는거요 | 널위해 | 2025-02-18 |
2685449 | printf배우고있는데요 궁금한게있어요 (8) | 꽃큰 | 2025-02-18 |
2685393 | c언어 질문이요.... | 붕붕 | 2025-02-18 |
2685365 | 윈도우7에서 visual studio c++6.0 (1) | 빛길 | 2025-02-17 |
2685317 | segmentation fault가 나요 | 가람 | 2025-02-17 |
2685292 | 다중스택질문 | 올해1살 | 2025-02-17 |
2685231 | C언어와 닷넷에 대해서 질문!! (2) | 설아 | 2025-02-16 |
2685206 | VisualBasic 과 DEV++ 의 장단점과 만든 파일 호환 가능하나요? | 에드워드 | 2025-02-16 |
2685154 | 배열 크기조절 | 해찬솔 | 2025-02-15 |
2685124 | 수정이거 제가 뭐가 잘못한거죠 ? | 아이돌 | 2025-02-15 |
2685096 | 포인터의 고수분들 모두 보세요!! 제발 ㅠ_ㅠ 헷갈려헷갈려..갈려헷.. (7) | 치킨마루 | 2025-02-15 |
2685045 | 전처리기 질문 | 치에미 | 2025-02-14 |
2685016 | 오류 좀 확인해 주시면 감사하겠습니다 | 초코맛사탕 | 2025-02-14 |
2684917 | 알고리즘을 이용한 행렬의 전치// 문제다운 문제네요. | 뿡뿡 | 2025-02-13 |
2684868 | 양방향 연결리스트에서 실행도중 죽는 이유좀 찾아주세요. (2) | 예다움 | 2025-02-13 |
2684844 | 시계프로그램인데 도저히 모르겠어요ㅠ (1) | 비내리던날 | 2025-02-12 |
2684812 | 레포트좀도와주세요ㅠㅠ (2) | 갈매빛 | 2025-02-12 |
2684780 | 채팅창 흉내내보려고하는데요 ㅜ.ㅜ (1) | 바름 | 2025-02-12 |
2684729 | 내일 시험인데 메모리 그리는것좀 도와주세요 ㅠ (1) | 상처주지마 | 2025-02-11 |
2684701 | 버퍼 관련 질문 3가지 (이전거랑 달라요) | 한국녀 | 2025-02-11 |