Annotation of coherent/d/support/serial_no/number.c, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Calculate serial numbers and print labels.
                      3:  */
                      4: #include       <stdio.h>
                      5: #include       "unumber.h"
                      6: 
                      7: void   ser_number();
                      8: void   nu_usage();
                      9: 
                     10: int    c;      /* Version of COHERENT */
                     11: 
                     12: main(argc, argv)
                     13: int    argc;
                     14: char   *argv[];
                     15: {
                     16:        int     i, finish, start, total;
                     17: 
                     18:        if (argc != 4)
                     19:                nu_usage();
                     20:        if ((c = atoi(argv[1])) < 1 || c > VERSIONS) {
                     21:                        fprintf(stderr, "Bad coh_version \"%s\".\n", argv[1]);  
                     22:                        exit(1);
                     23:        }
                     24:        if ((start = atoi(argv[2])) < 1) {
                     25:                        fprintf(stderr, "Bad start_number \"%s\".\n", argv[2]); 
                     26:                        exit(1);
                     27:        }
                     28:        if ((total = atoi(argv[3])) < 1) {
                     29:                        fprintf(stderr, "Bad total_number \"%s\".\n", argv[3]); 
                     30:                        exit(1);
                     31:        }
                     32: 
                     33:        finish = start + total;
                     34:        c --;
                     35: 
                     36:        for (i = start; i < finish; i ++)
                     37:                ser_number(i);
                     38: 
                     39:        exit(0);
                     40: }
                     41: 
                     42: /*
                     43:  * Calculate and print in stdout a serial number.
                     44:  */
                     45: void
                     46: ser_number(num)
                     47: int    num;
                     48: {      
                     49:        printf( "%1d%03d%05d\n", c + 1,
                     50:                        magic1[c] ^ (num % magic2[c]), num ^ magic3[c]);
                     51: }
                     52: 
                     53: /*
                     54:  * Usage of program number.
                     55:  */
                     56: void 
                     57: nu_usage()
                     58: {
                     59:        printf("number coherent_version start_number total_number\n");
                     60:        exit(1);
                     61: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.