Professional Documents
Culture Documents
Exxe
Exxe
Exxe
proiect:
#include<stdio.h>
#include <GL/glut.h>
#include<windows.h>
c=a/b;
return c;
}
int *numar;
struct{
int an, km;
float capacitate,medie,varsta;
char brand[15], nume[15], combustibil[15], tract[15], caroserie [15],
motor[15];
}car[20],aux;
void display(){
int i,j;
char text[5];
glClearColor(1.0f,1.0f,1.0f,0.5f);
glClear(GL_COLOR_BUFFER_BIT);
for(i=0;i < *numar; i++){
glBegin(GL_QUADS);
glColor3f(0.0f,i/5.,1.0f);
glVertex2f(-1.25+i*0.23,-0.5);
glVertex2f(-1.25+i*0.23+0.22,-0.5);
glVertex2f(-1.25+i*0.23+0.22,-0.05+car[i].medie/100000.);
glVertex2f(-1.25+i*0.23,-0.05+car[i].medie/100000.);
glEnd();
glRasterPos2f(-1.3+i*0.25+0.08,-0.5+car[i].medie/100000 + 0.5);
sprintf(text, "%.2f",car[i].medie);
for(j=0;j<strlen(text);j++)
glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_10,text[j]);
glRasterPos2f(-1.3+i*0.25+0.08,-0.6);
for(j=0 ; j < strlen(car[i].nume);j++)
glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_10,car[i].nume[j]);
}
glFlush();
}
int main(int argc, char **argv)
{
int nr,i,anul,flag;
//scanf("%d",anul)
FILE *date,*file_out;
date = fopen("date.txt","r");
if(!date)
{
printf("Eroare la deschidere fisier!");
fflush(stdout);
return 1;
}
fscanf(date,"%d%d",&nr,&anul);
for(i=1;i<=nr;i++)
fscanf(date,"%s%s%d%d%s%s%f%s
%s",car[i].brand,car[i].nume,&car[i].an,&car[i].km,car[i].combustibil,car[i].tract,
&car[i].capacitate,car[i].caroserie,car[i].motor);
do{
flag=0;
for(i=0;i<nr;i++)
if(car[i].medie>car[i+1].medie)
{
aux=car[i];
car[i]=car[i+1];
car[i+1]=aux;
flag=1;
}
}while(flag!=0);
file_out=fopen("dateout.txt","w");
fprintf(file_out,"Brand Nume An Kilometri km/an ");
for(i=1;i<=nr;i++)
fprintf(file_out,"\n%s %s %d %d %.2f",
car[i].brand,car[i].nume,car[i].an,car[i].km,car[i].medie);
numar = &nr;
glutInit(&argc, argv);
glutInitWindowSize(320, 320);
glutInitWindowPosition(100, 100);
glutCreateWindow("Grafic KM Anual");
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
#include <GL/freeglut.h>
#include<stdio.h>
#include<windows.h>
}
struct {
char titlu[30];
int pagini;
int capitole;
int an_aparitie;
int clasament;
char tari_publicare[20];
char edituri[20];
int pret;
int vanzari;
int vechime;
float medie_vanzari;
float medie_venituri;
} book[30], x;
int *nr;
void display() {
int i, j;
char text[10];
glClearColor(1.0f, 1.0f, 1.0f, 0.5f);
glClear(GL_COLOR_BUFFER_BIT);
glEnd();
glRasterPos2f(-1 + i * 0.13 + 1,
1.9);
sprintf(text, "%.2f", book[i].medie_vanzari);
for (j = 0; j < strlen(text); j++)
glRasterPos2f(-1. + i * 0.15 + .1,
0.9);
sprintf(text, "%.2f", book[i].medie_vanzari);
}
glFlush();
}
printf(" ######################################################");
do {
y = 0;
for (i = 0; i < a; i++)
if (book[i].medie_venituri > book[i + 1].medie_venituri) {
x = book[i];
book[i] = book[i + 1];
book[i + 1] = x;
y = 1;
}
} while (y != 0);
nr = &a;
fflush(stdout);
glutInit(&argc, argv);
glutInitWindowSize(680,480);
glutInitWindowPosition(100, 100);
glutCreateWindow(
"Graficul vânzărilor generat in medie pe parcursul unui an");
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
* *
#include<stdio.h>
struct complex
{
float re, im;
};
int main()
{
struct complex a, b, sum, dif;
a.re = 1;
a.im = 4;
b.re = 7;
b.im = 6;
//s = a.re + b.re + (a.im + b.im);
//printf("%.2f%.2fi", s.re, s.im);
suma(a,b);
diferenta(a,b);
produs(a,b);
// sum = suma(a,b);
// dif = diferenta(a,b);
// printf("%.f\n%.f", sum, dif);
return 0;
}
int main() {
int *v1, *v2, *x;
return 0;
}
3.*Realizați suma a doi vectori declarați în mod dinamic.
* *
#include <stdio.h>
#include <stdlib.h>
int main() {
int *vector1, *vector2, *suma;
int dimensiune;
int i;
// Afișarea sumei
printf("\nSuma vectorilor:\n");
fflush(stdout);
for (i = 0; i < dimensiune; i++) {
printf("suma[%d] = %d\n", i, suma[i]);
fflush(stdout);
}
return 0;
}
4.*Scrieti un program care
* sa deseneze un hexagon rosu pe un fundal verde inchis.*
#include <GL/glut.h>
#include<windows.h>
// Funcția de afișare
void display() {
glClear(GL_COLOR_BUFFER_BIT);
// Desenarea hexagonului
glBegin(GL_POLYGON);
glVertex2f(-0.5, 0.866);
glVertex2f(-1.0, 0.0);
glVertex2f(-0.5, -0.866);
glVertex2f(0.5, -0.866);
glVertex2f(1.0, 0.0);
glVertex2f(0.5, 0.866);
glEnd();
glFlush();
}
// Funcția de afișare
void display() {
glClear(GL_COLOR_BUFFER_BIT);
// Linia orizontală
glVertex2f(-0.5, 0.0);
glVertex2f(0.5, 0.0);
glEnd();
glFlush();
}
nr_initial = nr;
if (nr_initial == nr_intors) {
printf("%d este un număr palindrom.\n", nr_initial);
} else {
printf("%d nu este un număr palindrom.\n", nr_intors);
}
return 0;
}
#include <stdio.h>
#include <string.h>
int main() {
char email[20];
int ar = 0;
int pct = 0;
int lungime_sir;
int valid = 1;
lungime_sir = strlen(email);
if (pct != 1) {
printf("Adresa de e-mail nu contine exact un caracter '.'.\n");
valid = 0;
}
if (valid) {
printf("Adresa de e-mail este validă.\n");
} else {
printf("Adresa de e-mail nu este validă.\n");
}
return 0;
}
#include <GL/freeglut.h>
#include<windows.h>
void display() {
glClear(GL_COLOR_BUFFER_BIT);
// Desenăm capul
glColor3f(1.0f, 1.0f, 0.0f); // Setăm culoarea la galben
glPushMatrix();
glTranslatef(0.0f, 0.6f, 0.0f);
glutSolidSphere(0.3f, 100, 100);
glPopMatrix();
// Desenăm corpul
glColor3f(1.0f, 0.0f, 0.5f); // Setăm culoarea la roz
glPushMatrix();
glTranslatef(0.0f, 0.0f, 0.0f);
glScalef(0.6f, 1.0f, 0.3f);
glutSolidCube(1.0f);
glPopMatrix();
// Desenăm brațele
glColor3f(0.6f, 0.0f, 1.0f); // Setăm culoarea la violet
glPushMatrix();
glTranslatef(-0.4f, 0.2f, 0.0f);
glScalef(0.3f, 0.6f, 0.3f);
glutSolidCube(1.0f);
glPopMatrix();
glPushMatrix();
glTranslatef(0.4f, 0.2f, 0.0f);
glScalef(0.3f, 0.6f, 0.3f);
glutSolidCube(1.0f);
glPopMatrix();
// Desenăm picioarele
glColor3f(0.0f, 1.0f, 0.0f); // Setăm culoarea la verde
glPushMatrix();
glTranslatef(-0.2f, -0.7f, 0.0f);
glScalef(0.3f, 0.6f, 0.3f);
glutSolidCube(1.0f);
glPopMatrix();
glPushMatrix();
glTranslatef(0.2f, -0.7f, 0.0f);
glScalef(0.3f, 0.6f, 0.3f);
glutSolidCube(1.0f);
glPopMatrix();
glFlush();
}
int main() {
FILE *file;
int num1, num2, num3;
float average;
// Închideți fișierul
fclose(file);
return 0;
}
10.*Scrieţi un program care va afişa toate cifrele unui număr, în ordine inversă,
* cu câte un spaţiu între ele. Ex. pt 12345 programul va afişa 5 4 3 2 1.
* *
#include <stdio.h>
int main() {
int nr;
printf("\n");
return 0;
}
do {
j = 0;
for (i = 0; i < n; i++)
if (v[i] > v[i + 1]) {
aux = v[i];
v[i] = v[i + 1];
v[i + 1] = aux;
j++;
}
} while (j != 0);
for (i = 0; i < n; i++) {
if (i % 6 == 0) {
printf("\n");
}
printf("%d ", v[i]);
}
return 0;
}
//Dati la tastatura un interval de numere (maxim 100 de numere sa fie in interval)
//si apoi codul sa salvexe numerele impare in mod descrescator (adica v[0] =
// cel mai mare nr) si sa afiseze cate 6 numere pe rand, in ordine crescatoare,
//adica de la cel mai mic numar
2)
#include<stdio.h>
#include<string.h>
#include <ctype.h>
*Să se scrie un program care va citi de la tastatură un șir de caractere și va
determina:
dacă șirul conține cifre, se va determina șirul rezultat prin eliminarea cifrelor
(ex. in:"dsACdg544Edsgf", out:"dsACdgEdsgf")
la fel și în cazul literelor (se extrage numărul întreg format din cifrele
șirului:
"dsACdg544Edsgf" -> 544 int)
*
int main() {
char sir[20], sir2[20], sir3[20];
int len, i, nr, nr2, nr3, sum = 0, mic, mare, nr4;
scanf("%s", sir);
len = strlen(sir);
//nr de cifre
for (i = 0; i < len; i++) {
if (sir[i] >= '0' && sir[i] <= '9')
nr++;
}
printf("\n\n%d", nr);
//nr de vocale
for (i = 0; i < len; i++)
if (sir[i] == 'A' || sir[i] == 'E' || sir[i] == 'I' || sir[i] == 'O'
|| sir[i] == 'U' || sir[i] == 'a' || sir[i] == 'e'
|| sir[i] == 'i' || sir[i] == 'o' || sir[i] == 'u')
nr2++;
printf("\n%d", nr2);
//suma cifrelor din sir
for (i = 0; i < len; i++) {
if (sir[i] >= '0' && sir[i] <= '9') {
nr3 = sir[i] - '0';
sum += nr3;
}
//sum+= <=> sum = sum + ...
}
printf("\n%d", sum);
//nr de litere mici si litere mari
for (i = 0; i < len; i++) {
if (sir[i] >= 'a' && sir[i] <= 'z')
mic++;
}
for (i = 0; i < len; i++) {
if (sir[i] >= 'A' && sir[i] <= 'Z')
mare++;
}
nr4 = mic + mare;
printf("\n%d", nr4);
//litere mici in litere mari
strcpy(sir,sir2);
for (i = 0; i < len; i++) {
if (sir[i] >= 'a' && sir[i] <= 'z')
sir2[i]-=32;
}
printf("\n");
printf("%s", sir2);
//litere mari in litere mici
strcpy(sir,sir3);
for (i = 0; i < len; i++) {
if (sir[i] >= 'A' && sir[i] <= 'Z')
sir3[i]+=32;
}
printf("\n");
printf("%s", sir3);
return 0;
}
*
*#include<stdio.h>
#include<string.h>
int main () {
struct complex{
int re, im;
};
return 0;
}
*
*#include<stdio.h>
#include<string.h>
int main(){
int n=0,i;
int plitere=0;
char hotelmic[20];
int pretmic=0;
struct hotel{
char numehotel[20];
char localitate[20];
int nrcam;
int pret;
}hotel[5];
FILE *a;
a=fopen("hm.txt","r");
while(fscanf(a, "%s%s%d
%d",hotel[n].numehotel,hotel[n].localitate,&hotel[n].nrcam,&hotel[n].pret)!=EOF){
n++;
}
for(i=0;i<n;i++){
fscanf(a, "%s%s%d
%d",hotel[i].numehotel,hotel[i].localitate,&hotel[i].nrcam,&hotel[i].pret);
}
plitere = strlen(hotel[0].numehotel);
strcpy(hotelmic, hotel[0].numehotel);
for(i=1;i<n;i++)
{
if(plitere > strlen(hotel[i].numehotel))
{
strcpy(hotelmic, hotel[i].numehotel);
plitere = strlen(hotel[i].numehotel);
}
}
for(i=0;i<n;i++)
{
if(hotel[i].pret>=300)
pretmic++;
}
printf("Hotelul cu cele mai putine litere:%s\n",hotelmic);
printf("nr de hoteluri peste 300eur: %d",pretmic);
return 0;
}
*
*#include<stdio.h>
#include<string.h>
int main(){
char vangn[20],vangp[20];
int n=0,i,vechimea, suma=0;
struct angajat{
char nume[10];
char prenume[10];
int nastere;
int angajare;
int sal;
}angajat[5];
FILE *a;
a = fopen("note.txt","r");
while(fscanf(a,"%s%s%d%d
%d",angajat[n].nume,angajat[n].prenume,&angajat[n].nastere,&angajat[n].angajare,
&angajat[n].sal)!=EOF){
n++;
}
for(i=0;i<n;i++)
{fscanf(a,"%s%s%d%d
%d",angajat[i].nume,angajat[i].prenume,&angajat[i].nastere,&angajat[i].angajare,
&angajat[i].sal);
}
//vechimea
vechimea = angajat[0].angajare;
strcpy(vangn, angajat[0].nume);
strcpy(vangp, angajat[0].prenume);
for(i=1;i<n;i++)
{
if(vechimea<angajat[i].angajare){
vechimea = angajat[i].angajare;
strcpy(vangn, angajat[i].nume);
strcpy(vangp, angajat[i].prenume);
}
}
for(i=0;i<n;i++)
{
if(angajat[i].sal>=1000)
suma++;
}
printf("Vechimea cea mai mare o are %s %s \n",vangn , vangp);
printf("Cati au salariu mai mare de 1000: %d",suma);
return 0;
}
* *
*/