BluePink BluePink
XHost
Gazduire site-uri web nelimitata ca spatiu si trafic lunar la doar 15 eur / an. Inregistrare domenii .ro .com .net .org .info .biz .com.ro .org.ro la preturi preferentiale. Pentru oferta detaliata accesati site-ul BluePink

Aplicatii tip consola C/C++

Coding in C
  1. editam codul sursa,salvam cu numele hello.c
  2. compilare: gcc -o hello hello.c
  3. executie: ./hello

Coding in C++
  1. editam codul sursa,salvam cu numele hello.cpp
  2. compilare: g++ -o hello hello.cpp
  3. executie: ./hello

#include <stdio.h>
  int main()
  {
    printf("Servus coders !!!\n");
    return 0;
}

	//Functie pentru calcul puteri
	#include <stdio.h>

    int main()
    {
	int i;
	for(i=0;i<10;++i)
	  printf("%d %d %d\n",i,putere(2,i),putere(-3,i));

	return 0;
    }

    int putere(int baza,int n)
    {
	int i,p;
	p=1;
	for(i=1;i<=n;++i)
	  p=p*baza;
	 return p;
     }

//Transformare din radiani in gr,min,sec
#include <stdio.h>
#define PI 3.1416

int main (void) {
  double unghi_rad,gfr,minfr;
  int grade,minute,secunde;

  printf("Introduceti unghiul in radiani:");
  scanf("%lf",&unghi_rad);
  grade=gfr=unghi_rad*180./PI;
  minute=minfr=(gfr-grade)*60.;
  secunde=(minfr-minute)*60.;
  printf("\n Unghiul are %d grade, %d minute si %d secunde.\n",grade,minute,secunde);
  return 0;
}

//Testare palindrom
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int palindrom(int n) {
  int n_salv=n;
  int n_inv=0;
  while(n) {
    n_inv=n_inv*10 + n%10;
    n/=10;
    }
  return(n_salv==n_inv);
  }

 int main(void) {
  int n;
  printf("Introduceti numarul:"); scanf("%d",&n);
  if(palindrom(n))
    printf("Numarul este palindrom\n");
  else
    printf("Numarul nu este palindrom\n");
    return 0;
 }
 

//Testare palindrom-alta varianta
#include <stdio.h>
#include <string.h>
int main(){
int i,j;
char s[20];
i=0; j=strlen(s)-1;
while(i=j) printf("palindrom"); else printf("nu este palindrom");
return 0;
}

/* se citesc n numere */
/* fara a ordona numerele,se determina al k numar ca valoare din sir */

#include <conio.h>
#include <stdio.h>
#include <process.h>

int main()
{
 int num[15];
 int n,k,i,j,maimici;

 clrscr();
 printf("Cate numere avem: ");
 scanf("%d",&n);
 /* citire numere */
 for(i=0;i<n;i++)
 {
  printf("n[%d]=",i); /* n[0]=..,n[1]=.., */
  scanf("%d",&num[i]);
 }
 printf("\n\nAl catelea numar?");
 scanf("%d",&k);
 /* afisare */
 for(i=0;i<n;i++)
 {
   maimici=0;
   for(j=0;j<n;j++)
     if(i!=j)
       if(num[i]>num[j])
	 maimici++;
   if(maimici==(k-1))
   {
    printf("Al %d-lea numar din masivul initial este %d\n\n",k,num[i]);
    exit;
   }
 }
 getch();
 return 0;
}

//Divizibilitate cu 7
#include <iostream>
using namespace std;

int main()
{
	int n;
	cout<<"Enter a number and press ENTER:";
	cin>>n;
	if(n%7==0)
	  cout<<"The number is divisible by 7";
	 else
	   cout<<"The number is not divisible by 7";

	return 0;
}

//Utilitarul echo
//varianta C
/*utilizare: echo text */
#include <iostream>
using namespace std;

int main(int argc, char** argv)
{
	int i;
	for(i=1;i<argc;i++)
	  printf("%s %s",argv[i],(i<argc-1)? " ":" ");
	  printf("\n");


	return 0;
}

//Utilitarul echo
//varianta C++ *
#include <iostream>
using namespace std;

int main(int argc, char** argv)
{
	while(--argc>0){
		cout* <<++argv<<endl; // va indica spre argv[1] din start


	}


	return 0;
}

//Factorial
#include <iostream>
using namespace std;

int fact(int num);

int main()
{
	int n;
	cout<<"Enter a number and press ENTER: ";
	cin>>n;
	cout<<"Function returned  "<<fact(n);
	return 0;

}

int fact(int n){
	int i;
	int product=1;
	for(i=1; i<=n;i++)
	  product*=i;
	 return product;
 }
  

// c.m.m.d.c.  &  c.m.m.m.c.

#include <stdio.h>
#include <conio.h>

long int x,y,dc;

long int cmd(long int x,long int y)
{
 if(y==0)
  return x;
 else
  return cmd(y,x % y);
}

main()
{
 clrscr();
 printf("X= ");
 scanf("%d",&x);
 printf("Y= ");
 scanf("%d",&y);
 printf("\n\n");
 dc=cmd(x,y);
 printf("Cmmdc=%ld\n",dc);
 printf("Cmmmc=%ld\n",x*y/dc);
 getch();
 return 0;
}

//Functie afisare
#include <iostream>
using namespace std;

int print_out(int n);  //prototipul functiei

int main()
{
	int n;
	cout<<"Enter a number and press ENTER: ";
	cin>>n;
	print_out(n);  //apelare, n--parametru actual

	return 0;
}

int print_out(int n){    //definitia,int n--parametru formal
	int i;
	for(i=1;i<=n;i++)
	  cout<<i<<" ";

	return 0;
}

//Testare numere prime
#include <iostream>
#include <math.h>
using namespace std;

int prime(int n); //declarare

int main()
{
	int i;  //variabila locala
	while(1) {
		cout<<"Enter a number (0 to exit)";
		cout<<" and press Enter:";
		cin>>i;
		if(i==0)
		  break;
		if(prime(i))   //se apeleaza functia prime; daca rezultatul intors de prime este true...
		  cout<<i<<" is prime"<<endl;
		else
		  cout<<i<<" is not prime"<<endl;
		}
	return 0;
}

int prime(int n) {
	int i;  //variabila locala
	for(i=2; i<=sqrt((double)n);i++) {
		if(n%i==0)
		  return false;//nu este prim
		}
		return true;
}


//Testare numere prime-alta varianta
#include <iostream>
#include <math.h>
using namespace std;

int main()
{
	int n,i,is_prime;
	is_prime=true;
	cout<<"Enter a number and press ENTER:";
	cin>>n;
	i=2;
	double sqrt_n=sqrt(static_cast<double>(n));  // n il convertim la tipul double
	while(i<=sqrt_n){      // divizorii lui n se afla anterior lui sqrt(n)
		if(n%i==0){
			is_prime=false;
			break; // dupa ce a fost gasit primul divizor se  intrerupe ciclarea
		}
		i++;
	}
	if(is_prime)
	  cout<<"Number is prime !";
	 else
	   cout<<"Number is not prime !";
	return 0;
	}

//conversie din baza 2 in baza 10

#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int putere(int x);
int main()
{
 int i,numar10=0,n2,cod;
 char numar2[20];
 char *ch;

 clrscr();
 printf("Numar in baza 2:");
 scanf("%s",&numar2);
 for(i=strlen(numar2)-1;i>=0;i--)
 {
  *ch=numar2[i];
  n2=atoi(ch);
  numar10+=n2*putere(strlen(numar2)-i-1);
 }
 /* afisare */
 printf("\nNumarul in baza 10 este %d",numar10);
 getch();
 return 0;
}

int putere(int x)
{
 int p,j;
 p=1;
 for(j=1;j<=x;j++)
   p*=2;
 return p;
}

/* de la tastatura se citesc n numere crescatoare */
/* se determina daca numarul 'ce' (citit de la intrare) apare in sirul initial si pe ce pozitie */
/* CAUTARE BINARA */

#include <stdio.h>
#include <conio.h>
#include <process.h>

long binsearch(int masiv[],int n,int x)
{
 int low,upp,i;
 low=0;
 upp=n;
 while (low<=upp) {
  i=(low+upp)/2;
  if(masiv[i]==x)
  {
    printf("\n");
    printf("Numarul apare pe pozitia %d",i);  /* pozitia elementului cautat */
    return 100;
  }
  if(masiv[i]>x)
   upp=i-1;  /* cautare dreapta */
  else
   low=i+1; /* cautare stanga */
 }
 return -1;
}

void main(void)
{
 int masiv[25],nelem,ce,i;
 clrscr();
 do {
  printf("Numarul de elemente :"); /* citire numar de elemente */
  scanf("%u",&nelem);
 }while(nelem>25);

 for(i=0;i<nelem;i++)
 {
  printf("Numarul %d= ",i);  /* citire elemente masiv */
  scanf("%u",&masiv[i]);
 }
 printf("Numarul cautat= "); /* ce numar se cauta */
 scanf("%u",&ce);

 if(binsearch(masiv,nelem,ce)==-1)   /* apel functia binsearch  */
  printf("KO");
 getch();
}

/* citeste de la tastatura n numere */
/* sorteaza crescator numerele prin METODA BULELOR */
#include <stdio.h>
#include <conio.h>

void ord (int x[],int n)
{
 int i,flag,temp;
 flag=-1;
 while (flag==-1) {
   flag=1;
   for(i=0;i<n-1;i++)
     if(x[i]>x[i+1]) {
       temp=x[i];
       x[i]=x[i+1];
       x[i+1]=temp;
       flag=-1;
     }
 }
}
main()
{
 int masiv[25],i,nelem;
 clrscr();
 do {
   printf("Numarul de elemente :");
   scanf("%u",&nelem);
 }while(nelem>25);

 for(i=0;i<nelem;i++)
 {
  printf("Numarul %d= ",i);
  scanf("%u",&masiv[i]);
 }

 if(nelem>1)
 {
  ord(masiv,nelem);
  printf("\n\n");
  printf("Masivul sortat crescator: \n\n");
  for(i=0;i<nelem;i++)
    printf("%d%c",masiv[i],' ');
 }
 getch();
 return 0;
}

/* Verifica daca  doua numere sunt prietene */
/* numere prietene=daca suma divizorilor unui numar(cu exceptia sa) este egala cu celalalt numar si viceversa */

#include <stdio.h>
#include <conio.h>
#include <math.h>

void Nu()
{
  printf("\nnumerele nu sunt prietene!");
  printf("\n\a");
}

void main(void)
{
 int x,y,S1,S2,i;
 clrscr();
 do
 {
  printf("Numarul X:");
  scanf("%u",&x);
 }while(x<0);

 do
 {
  printf("Numarul Y:");
  scanf("%u",&y);
 }while(y<0);

 S1=0;
 for(i=1;i<=ceil(x/2);i++)
  if(x%i==0)
  {
   printf("%d\n",i);
   S1+=i;
  }
   printf("\nS1=%d\n\n",S1);
   if(S1==y) /* daca suma divizorilor lui x este egala cu y */
{
  S2=0;
  for(i=1;i<=ceil(y/2);i++)
    if(y%i==0)
    {
     printf("%d\n",i);
     S2+=i;
    }
    printf("\nS2=%d\n",S2);
    if(S2==x) /* daca suma divizorilor lui y este egala cu x */
    {
     printf("\nNumerele sunt prietene!");
     printf("\n\a");
    }
    else Nu(); /* numerele nu sunt prietene */
}
else Nu();
getch();
}

/* se initializeaza o variabila de tip sir de caractere */
/* apoi folosind un pointer se scrie sirul invers */

#include <stdio.h>
#include <conio.h>
#include <string.h>

main()
{
  char *sir_ptr="Vasiu Lucian";
  int i;

  clrscr();
  printf("Sirul normal : %s\n\n",sir_ptr);
  printf("Sirul afisat invers : ");
  for(i=strlen(sir_ptr)-1;i>=0;i--)
   printf("%c",sir_ptr[i]);
  printf("\n\nApasati ENTER pentru terminare!");
  getch();

  return 0;
}

/* scrie intr-un fisier cu acces aleator un numar de inregistrari */
/* permite cautarea unei inregistrari stocate la pozitia introdusa de utilizator */
#include <stdio.h>
#include <conio.h>

typedef struct inreg {
	int nr;
	char nume[20];
	char prenume[20];
	char tel[7];
	}elev;
main()
{
 FILE *fis;
 elev el;
 unsigned int i,x;
 long int ofs;

 clrscr();
 fis=fopen("fis100.txt","w+");
 for(i=0;i<4;i++)  /* introducem 4 inregistrari */
 {
   printf("Numarul elevului: ");
   scanf("%d",&el.nr);
   printf("Numele elevului : ");
   scanf("%20s",el.nume);
   fflush(stdin);
   printf("Prenumele elevului : ");
   scanf("%20s",el.prenume);
   fflush(stdin);
   printf("Nr. telefon : ");
   scanf("%7s",el.tel);
   fflush(stdin);
   fwrite(&el,sizeof(elev),1,fis);
   printf("\n");
}

printf("Ce inregistrare cautam? ");
scanf("%u",&x);

ofs=(x-1)*sizeof(elev);
fseek(fis,ofs,SEEK_SET);
fread(&el,sizeof(elev),1,fis);
printf("\n\n Inregistrarea este:\n %d %s %s %s \n",el.nr,el.nume,el.prenume,el.tel);
fclose(fis);
printf("\nOK\n");
getch();
return 0;
}