cn manual
cn manual
cn manual
program:-
#include <stdio.h>
#include <string.h>
int main() {
char a[30], fs[50] = "", t[3], sd, ed, x[3], s[3], d[3], y[3];
int i, j;
scanf("%s", a);
strcat(fs, x);
t[0] = a[i];
t[1] = '\0';
if (t[0] == sd) {
strcat(fs, s);
strcat(fs, d);
} else {
strcat(fs, t);
strcat(fs, y);
return 0;
}
output:-
program:-
#include <stdio.h>
#include <string.h>
main() {
int i, j, p = 0, q = 0;
scanf("%s", a);
strcat(fs, "01111110");
if (strlen(a) < 5) {
strcat(fs, a);
} else {
t[p++] = a[j];
t[p] = '\0';
if (strcmp(t, "11111") == 0) {
strcat(fs, "111110");
i = j - 1;
} else {
r[0] = a[i];
r[1] = '\0';
strcat(fs, r);
p = 0;
t[p] = '\0';
strcat(fs, t);
strcat(fs, "01111110");
output:-
2. Write a program to compute CRC code for the polynomials CRC-12, CRC-16 and CRC CCIP
program:-
3. Develop a simple data link layer that performs the flow control using the sliding window protocol,
program:-
#include <stdio.h>
int main() {
scanf("%d", &window_size);
while(1) {
sent++;
scanf("%d", &ack);
return 0;
}
output:-
program:-
#include <stdio.h>
void sort(void);
struct {
char src;
char dest;
int length;
} stemp, permanent[10] = {' ', ' ', 0}, temp[10] = {' ', ' ', -1};
int main() {
int i, j, k, l, m, n = 0, point;
scanf("%d", &nodes);
scanf("%d", &dsp[i][j]);
permanent[perm].src = initial;
permanent[perm].dest = initial;
permanent[perm++].length = 0;
if (i != j) {
if (dsp[i][j] > 0) {
temp[tem].dest = j + 97;
temp[tem++].length = dsp[i][j];
sort();
if (i != initial - 97) {
if (dsp[j][i] > 0) {
l = -1;
for (k = 0; k < perm; k++) {
if (permanent[k].dest == (i + 97))
l = k;
if (temp[k].dest == (i + 97))
l = k;
if (l < 0) {
temp[tem].src = j + 97;
temp[tem].dest = i + 97;
if (permanent[m].dest == temp[tem].src)
n = permanent[m].length;
temp[tem++].length = dsp[j][i] + n;
} else {
if (permanent[m].dest == j + 97) {
n = permanent[m].length + dsp[j][i];
break;
} else {
n = dsp[j][i];
temp[l].length = n;
temp[l].src = j + 97;
temp[l].dest = i + 97;
}
}
sort();
printf("\nShortest path:\n");
if (permanent[i].dest == dest) {
point = i;
n = i;
break;
i = 0;
path[i++] = permanent[point].dest;
point = j - 1;
path[i] = initial;
void sort() {
int i, j, k;
k = 1;
stemp = temp[j];
temp[j + 1] = stemp;
k = 0;
if (k)
break;
tem--;
output:-
*******************************************************
0 1 -1 2 -1 -1
1 0 1 -1 -1 -1
-1 1 0 1 1 -1
2 -1 1 0 2 -1
-1 -1 1 2 0 3
-1 -1 -1 -1 3 0
Shortest path:
5. Take an example subnet of hosts and obtain a broadcast tree for the subnet.
program:-
#include <stdio.h>
int min();
int distance[20];
int n;
int main() {
int i, j, root, x;
scanf("%d", &n);
scanf("%d", &adj[i][j]);
scanf("%d", &source);
flag[i] = 0;
distance[i] = adj[root][i];
x = min();
if(distance[i] == x) {
adj1[root][i] = x;
adj1[i][root] = x;
} else {
adj1[root][i] = 0;
if(adj1[i][j] != 0) {
adj1[j][i] = adj[i][j];
printf("\n");
printf("\n");
root = source;
flag[root] = 1;
while(count != y) {
flag[i] = 1;
if(root < n - 1) {
root++;
} else {
root = 0;
}
if(flag[i] == 0) {
break;
if(i == n) {
count = y;
return 0;
int min() {
int i, j = 0;
int mini;
int distance1[10];
if(distance[i] != 0) {
distance1[j] = distance[i];
j++;
mini = distance1[0];
mini = distance1[i];
return mini;
output:-
20
02
20
02
20
1 sends message to 0
6. Implement distance vector routing algorithm for obtaining routing tables at each node.
program:-
#include <stdio.h>
#define MAX 10
int n;
class router {
public:
router() {
void copy() {
adj_old[i] = adj_new[i];
table_old[i] = table_new[i];
int equal() {
return 1;
}
void input(int j) {
printf("Enter 1 if the corresponding router is adjacent to router (%c) else enter 99: ", 'A' + j);
printf("\nEnter matrix:\n");
if(i == j)
table_new[i] = 0;
else
scanf("%d", &table_new[i]);
adj_new[i] = 'A' + i;
void display() {
if(table_old[i] != 99)
adj_new[k] = 'A' + i;
};
int i = 0, j = 0;
while(i != n) {
r[i].copy();
r[i].build(i, r);
if(!r[i].equal()) {
j = i;
break;
int main() {
scanf("%d", &n);
router r[10];
build_table(r);
r[i].display();
return 0;
output:-
Enter 1 if the corresponding router is adjacent to router (A) else enter 99: B C D E
Enter matrix:
1 1 99 99
Enter 1 if the corresponding router is adjacent to router (B) else enter 99: A C D E
Enter matrix:
1 99 99 99
Enter 1 if the corresponding router is adjacent to router (C) else enter 99: A B D E
Enter matrix:
1 99 1 1
Enter 1 if the corresponding router is adjacent to router (D) else enter 99: A B C E
Enter matrix:
99 99 1 99
Enter 1 if the corresponding router is adjacent to router (E) else enter 99: A B C D
Enter matrix:
99 99 1 99
Destination Router: A B C D E
Outgoing Line: A B C C C
Destination Router: A B C D E
Outgoing Line: A B A A A
Destination Router: A B C D E
Outgoing Line: A A C D E
Destination Router: A B C D E
Outgoing Line: C C C D C
Destination Router: A B C D E
Outgoing Line: C C C C E
Hop Count: 2 3 1 2 0
program:-
#include <stdio.h>
#include <string.h>
}
void decrypt(char *message) {
int main() {
char message[100];
encrypt(message);
decrypt(message);
return 0;
output:-
program:-
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
#include <string.h>
if (a > bucketSize) {
printf("\n\t\tBucket overflow");
} else {
delay(500);
while (a > b) {
a -= b;
delay(500);
if (a > 0) {
printf("bytes sent\t");
int main() {
srand(time(0));
scanf("%d", &op);
delay(rand() % 1000);
bktInput(pktSize, op);
return 0;
output:-
Bucket overflow
Packet no 2 Packet size = 246
Bucket overflow
program:-
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#define FSize 3
int SeqNum;
} packet;
int i, j;
readdata[i].SeqNum = i + 1;
readdata[i].Data[j] = *msg;
readdata[i].Data[j] = '\0';
return NoOfPacket;
int i, trans;
srand(time(NULL));
if (Status[trans] != 1) {
transdata[i].SeqNum = readdata[trans].SeqNum;
strcpy(transdata[i].Data, readdata[trans].Data);
i++;
Status[trans] = 1;
}
free(Status);
int i, j;
packet temp;
temp = transdata[j];
transdata[j + 1] = temp;
int i;
printf("%4d", transdata[i].SeqNum);
sortframes(NoOfPacket);
printf("%4d", transdata[i].SeqNum);
printf("%s", transdata[i].Data);
printf("\n");
int main() {
char msg[100];
int NoOfPacket;
NoOfPacket = divide(msg);
shuffle(NoOfPacket);
receive(NoOfPacket);
free(readdata);
free(transdata);
return 0;
output:-
1 hi,
2 it
3 wa
4 sn
5 ice
6 me
7 eti
8 ng
9 uo
10 n s
11 und
12 ay
11 2 5 3 12 8 1 10 9 7 6 4
1 2 3 4 5 6 7 8 9 10 11 12