Пятница, 17.05.2024, 22:18
Приветствую Вас, Гость

*************************************19 - 3

Найти все простые числа от 1 до N (N<=10000), используя алгоритм ‘ решето Эратосфена ’


#include<stdio.h>

#include<conio.h>

char mask[] = {0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};

void main()

{

clrscr();

const long MAX=10000;

char newMAX[MAX/8];

for(long i=0;i<MAX/8;i++)

    newMAX[i]=0xFF;

 

for(i=2;i<=MAX/2;i++)

    if(newMAX[i/8] & mask[i%8])

       {

            long d=2*i;

            for(;d<MAX;d+=i)

                newMAX[d/8] &= ~mask[d%8];

       }

    for(i=2;i<MAX;i++)

       {

            if(newMAX[i/8] & mask[i%8])

              {

               printf("%8lu",i);

               if (wherey() == 25)

                  {

                   getch();

                   clrscr();

                  }

              }

      }

getch();

}

*************************************19 - 4

Написать функцию, которая возвращает преобразованную к верхнему регистру строку, полученную в качестве аргумента. Строка может содержать буквы латинского алфавита, цифры, пробел и знаки препинания.

 

#include<conio.h>

#include<stdio.h>

char str[]="You are FuCkEr!!! 234 asd2 12!@DSfS#@#sDFHd32";

int n=sizeof(str)/sizeof(char);

int i;

 

void main()

{

 clrscr();

 printf ("%s\n",str);

 for (i = 0; i < n; i++)

      if ((str[i] >= 92) & (str[i] <= 122))

              str[i] = str[i]-32;

 printf ("%s",str);

 getch();

}