Es mostren els missatges amb l'etiqueta de comentaris mitjans informàtics. Mostrar tots els missatges
Es mostren els missatges amb l'etiqueta de comentaris mitjans informàtics. Mostrar tots els missatges
divendres, 24 de febrer del 2012
Monogràfics a La Llotja
S'obre el període d'inscripcions dels monogràfics a La Llotja. Una bona oportunitat per reciclar-se. Aquí teniu més informació!
Etiquetes de comentaris:
art,
educació,
escola,
exercicis,
il·lustracio,
manualitats,
mitjans informàtics,
taller,
web
diumenge, 12 de setembre del 2010
Exercici d'Autocad: La cinta del Manuel

Divendres passat al Curs d'Autocad el "profe" ens va fer portar un objecte real per tal d'intentar dibuixar-lo amb el programa. El que en principi podia semblar un exercici una mica estrany, ja que fins ara hem anat fent exercicis explicats pas a pas amb el "profe", ens va tenir enganxats gairebé dues hores! L'objectiu de l'exercici era, sobretot, veure com abans de començar a desenvolupar qualsevol projecte cal planificar com el farem. No he pogut veure els resultats de tots els alumnes però sí el del meu company del costat, el Manuel, que amb molta traça va dibuixar aquesta cinta mètrica. Jo en vaig haver de conformar amb intentar replicar una tableta amb pastilles... Aquesta setmana intentaré aconseguir que la resta de companys em facin arribar els seus exercicis. Serà bonic tenir la feina feta amb tanta alegria aquí penjada!
Etiquetes de comentaris:
dibuix,
mitjans informàtics,
programari
dimecres, 18 d’agost del 2010
Kuler
És una aplicació web que ens permet experimentar amb el color i les combinacions de color. Enregistrant-nos a més podrem compartir les nostres propostes amb la resta del món. Però si ja és divertit barrejar els colors entre sí ara he descobert la possibilitat de cercar fotografies a Flickr i crear combinatòries a partir de la imatge triada. Excel·lent eina de treball i entreteniment!*Fotografia de 5500, pseudònim de Matt Peck a Flickr
Etiquetes de comentaris:
disseny,
fotografia,
mitjans informàtics,
web
dimecres, 11 d’agost del 2010
Firebug per aprendre CSS

Estic intentant aprendre una mica més sobre el funcionament dels CSS (Fulls d'estil en cascada) mitjançant la ja recomanada algun cop pàgina web Desarrollo Web. Estic seguint el mètode dels videotutorials, un cop els veig, miro els apunts escrits per fer repàs.
I avui m'han fet descobrir una molt bona aplicació per Firefox, el Firebug. El Firebug és un complement gratuït que es descarrega i s'instal·la a Firefox.
Un cop instal·lat i activat ens permet "esbudellar" les pàgines que ens agraden per veure com estan fetes!
Etiquetes de comentaris:
mitjans informàtics,
programació,
programari,
web
dimarts, 3 d’agost del 2010
PUE: Certificacions informàtiques
Empresa privada vinculada a la UPC, PUE ofereix formació en l'àmbit informàtic i la possibilitat d'acreditar-la mitjançant certificacions oficials: cursos de Java, Linux, PHP, Adobe. Els cursos no són gaire assequibles però també ofereixen formació subvencionada.
Etiquetes de comentaris:
educació,
mitjans informàtics,
programari
dissabte, 17 de juliol del 2010
Fundació CIM

Ofereix amplia oferta formativa en el àrea de disseny industrial / arquitectònic amb suport de la UPC. Personalment trobo interessants els cursos d'especialització i els cursos de formació ocupacional.
En el primer cas, de manera orientativa, un aturat pot realitzar un curs de 60 hores per 240 €. La formació ocupacional està subvencionada totalment pels aturats.
Especialització
Etiquetes de comentaris:
dibuix tècnic,
disseny,
educació,
escola,
mitjans informàtics,
programari
dijous, 15 de juliol del 2010
CAD vs. BIM
La primera classe del curs d'Autocad que estic fent a Premià In el professor ja ens va dir que la tendència està canviant dels sistemes CAD a cada cop utilitzar més els sistemes BIM. Però no vam entrar gaire més en el tema, anem a la Viquipèdia a intentar conèixer més a fons cadascun d'aquests sistemes:
CAD>> Computer Aided Design o Disseny Assistit per Ordinador
BIM>> Building Information Modeling o Modelat d'Informació de Construcció
Molt bé ja tenim la informació teòrica, però potser és millor que algun professional de la branca arquitectònica ens expliqui, amb llenguatge senzill, que han suposat aquests canvis. He trobat un article de l'any 2006 a on David Assael ens explica aquest procés de canvi.
Però si el que vols es veure amb els teus propis ulls que significa treballar amb un sistema o treballar amb un altre, no et perdis aquest vídeo, CAD vs. BIM a on podràs veure i entendre el salt qualitatiu que representen els programes BIM com Revit.
CAD>> Computer Aided Design o Disseny Assistit per Ordinador
BIM>> Building Information Modeling o Modelat d'Informació de Construcció
Molt bé ja tenim la informació teòrica, però potser és millor que algun professional de la branca arquitectònica ens expliqui, amb llenguatge senzill, que han suposat aquests canvis. He trobat un article de l'any 2006 a on David Assael ens explica aquest procés de canvi.
Però si el que vols es veure amb els teus propis ulls que significa treballar amb un sistema o treballar amb un altre, no et perdis aquest vídeo, CAD vs. BIM a on podràs veure i entendre el salt qualitatiu que representen els programes BIM com Revit.
Etiquetes de comentaris:
dibuix tècnic,
mitjans informàtics,
programari
dimecres, 14 de juliol del 2010
Blocs amb Autocad
És freqüent utilitzar en programes com Autocad blocs predissenyats que ens permeten estalviar temps en el moment de realitzar els nostres plànols. A la xarxa existeixen nombrosos recursos gratuïts amb blocs preparats per ser reutilitzats, com per exemple:>>bloquesautocad.com
>>portalbloques.com
>>dimensioncad.com
>>ceco.net
Etiquetes de comentaris:
dibuix tècnic,
mitjans informàtics,
programari
dimecres, 7 de juliol del 2010
Tallers d'estiu al Convent de Sant Agustí

Durant el mes de juliol és possible fer tallers monogràfics al Convent de Sant Agustí. En l'apartat de Creació musical oferiran tallers d'Ableton Live i Producció musical i en el de Noves Tecnologies es podran fer els tallers d'Illustrator, Photoshop i After Effects. Els preus varien en funció del taller però no són gaire elevats (entre els 30 i els 70 €, per una setmana, entre dos i tres hores al dia, en funció del taller). La resta de tallers oferts estan relacionats amb la Dansa. Pots trobar aquí la programació complerta.
Etiquetes de comentaris:
disseny,
educació,
mitjans informàtics,
programari,
taller
dijous, 24 de juny del 2010
4t Congrés de Tipografia
el perfecte orador!
Al segon Congrés l'any 2006, el José Ramón Penela, a partir d'ara Ramón, ens va fer partícips de les seves aventures d'explorador al districte de Hammersmith a Londres i amb el títol "Upper Mall: El callejón de los milagros" no es va conformar amb parlar-nos de la Kelmscott Press... En un temps record, va superar l'enginy d'Emmet Brown, i, sense De Lorean, vam aterrar al S. XVIII. Va ser fàcil convertir-se en un espectador més de la conferència d'Emery Walker del 15 de novembre de 1888, entusiasmar-nos tant com ho va fer un altre dels assistents -William Morris- i llegir esmorzant un té la crònica de l'éxit de la conferència al Pall Mall Gazette signada per Oscar Wilde.
L'any 2008 no vaig poder assistir al Congrés però n'estic convençuda que la seva aportació sobre Baskerville va ser una mostra més de la seva capacitat de comunicació. El títol de la ponència és ben suggerent: "El hombre que quiso dejar ciegos a sus compatriotas"!
La veritat és que aquest 2010 anava a València tenint molt clara la data i hora del seu "bolo". Penela és garantia de bona conferència. I és que és igual el que expliqui aquest home. Aquest any ens ha sorprès amb una aportació pràctica, molt concreta sobre algunes de les possibilitats d'Indesign a l'hora de treballar amb paràgrafs... Però més enllà de les possibilitats del P&J ens arriba la seva il·lusió, humor, passió i compromís.
Etiquetes de comentaris:
conferència,
disseny,
indesign,
mitjans informàtics,
tipografia
dilluns, 14 de juny del 2010
Processing, pendent per l'estiu!

Processing és una aplicació de codi obert que és pot descarregar de manera gratuïta a la web processing.org. Aquest programa permet treballar amb imatge i so, realitzant animacions i freqüentment és utilitzat per artistes i dissenyadors com a alternativa als programes tradicionals de pagament. Per aprendre més es pot consultar aquest tutorial en castellà amb nombrosos exemples pràctics.
Més feina per l'estiu!
Etiquetes de comentaris:
animació,
art,
mitjans informàtics,
programació
dijous, 27 de maig del 2010
Estructures
Ens permeten emmagatzemar dades de diferents tipus, com per exemple, el nom d'una persona i l'edat. El que farem serà modificar el programa amb el que estàvem treballant perquè ens demani els noms dels amics del nostre grup i després l'edat i, per últim, ens imprimeixi el contingut de l'estructura per pantalla.
Visualitzem el codi:
Clica sobre la imatge per a una correcta visualització
Bé fins aquí el resum per preparar la prova de dissabte! Demà descans.
Visualitzem el codi:
Clica sobre la imatge per a una correcta visualitzacióPer definir la estructura fem servir les línies de codi:
struct _amics{
char nom[NOM];
int edat;
}amics[MAX];
a on tindrem una "filera" amb caselles per anar ficant els noms i una segona "filera" per anar ficant les edats! Entre [ ] tenim NOM i MAX. El primer està declarat a les constants i indica la llargada de la cadena, 30 en l'exemple. MAX fa referència a la llargada d'amics, en el nostre exemple el grup sempre és de 6 amics.
Per omplir l'estructura (demanar les dades pel teclat) i per després imprimir-les (mostrar les dades introduïdes per pantalla) utilitzem el bucle for que ens serveix per iterar (repetir) quan sabem prèviament el nombre de vegades que haurem de fer el bucle.
struct _amics{
char nom[NOM];
int edat;
}amics[MAX];
a on tindrem una "filera" amb caselles per anar ficant els noms i una segona "filera" per anar ficant les edats! Entre [ ] tenim NOM i MAX. El primer està declarat a les constants i indica la llargada de la cadena, 30 en l'exemple. MAX fa referència a la llargada d'amics, en el nostre exemple el grup sempre és de 6 amics.
Per omplir l'estructura (demanar les dades pel teclat) i per després imprimir-les (mostrar les dades introduïdes per pantalla) utilitzem el bucle for que ens serveix per iterar (repetir) quan sabem prèviament el nombre de vegades que haurem de fer el bucle.
Bé fins aquí el resum per preparar la prova de dissabte! Demà descans.
Etiquetes de comentaris:
mitjans informàtics,
programació
dimecres, 26 de maig del 2010
Taules
Avui farem servir una taula per guardar un conjunt de dades del mateix tipus. Volem fer un programa que ens permeti emmagatzemar les edats dels amics del nostre grup d'amics que està format per 6 persones. Per no definir les variables per separat, crearem una variable taula, que ens permetrà guardar totes les edats. I per fer alguna cosa més calcularem la mitjana d'edat del grup.
Mirem el codi:
/*
/*Data: 26/05/10
Nom fitxer: edats_amics.c
Autor: AJF
Descripció: Programa que ens permetra guardar les edats dels nostres amics i
fer la mitjana d'edat del grup*/
#include
int main(void){
float edats_amics[6];//aquí definim la taula de 6 posicions
float total_edats_amics=0;
float mitjana_amics=0;
int i;
for(i=0;i<6;i++){
printf("Edat del amic %d: ", i+1);
scanf("%f", &edats_amics[i]); total_edats_amics=total_edats_amics+edats_amics[i];
}
mitjana_amics=total_edats_amics/6;
printf("La mitjana de edat del teu grup es de %.2f", mitjana_amics);
getchar();
getchar();
return(0);
}
*/
Per declarar la taula fem:
float edats_amics[6];
que ens permet declarar una variable amb decimals (float) que és diu edats_amics i que contindrà 6 edats.
Una cosa molt important, de cara a l'ús d'estructures repetitives, és que per recórrer una taula, partim de la casella 0 fins la última que és el total de caselles menys 1.
En el nostre cas, la taula emmagatzema 6 edats, per tant comença a la casella 0 i arriba fins la 5. Això es veu al bucle for que comença en i=0 i és manté actiu mentre i és més petit que 6, o sigui fins que arriba a 5 i surt!
Mirem el codi:
/*
/*Data: 26/05/10
Nom fitxer: edats_amics.c
Autor: AJF
Descripció: Programa que ens permetra guardar les edats dels nostres amics i
fer la mitjana d'edat del grup*/
#include
int main(void){
float edats_amics[6];//aquí definim la taula de 6 posicions
float total_edats_amics=0;
float mitjana_amics=0;
int i;
for(i=0;i<6;i++){
printf("Edat del amic %d: ", i+1);
scanf("%f", &edats_amics[i]); total_edats_amics=total_edats_amics+edats_amics[i];
}
mitjana_amics=total_edats_amics/6;
printf("La mitjana de edat del teu grup es de %.2f", mitjana_amics);
getchar();
getchar();
return(0);
}
*/
Per declarar la taula fem:
float edats_amics[6];
que ens permet declarar una variable amb decimals (float) que és diu edats_amics i que contindrà 6 edats.
Una cosa molt important, de cara a l'ús d'estructures repetitives, és que per recórrer una taula, partim de la casella 0 fins la última que és el total de caselles menys 1.
En el nostre cas, la taula emmagatzema 6 edats, per tant comença a la casella 0 i arriba fins la 5. Això es veu al bucle for que comença en i=0 i és manté actiu mentre i és més petit que 6, o sigui fins que arriba a 5 i surt!
Etiquetes de comentaris:
mitjans informàtics,
programació
dimarts, 25 de maig del 2010
Cadenes
Comencem explicant les cadenes, ahir explicàvem, que ens permeten guardar més d'una lletra o caràcter. Ens hem d'imaginar una filera amb caselles i com a cada casella guardarà un caràcter.
Farem un programa que et demani el nom dels teus dos millors amics i després te'ls mostri per pantalla:
/*Data: 25/05/10
Nom fitxer: millors_amics.c
Autor: AJF
Descripció: Programa que ens permetra guardar el nom dels nostres dos millors
amics*/
#include
int main(void){
char amic1[20];//cadena que permetrà guardar noms de màxim 20 caràcters
char amic2[20];//exactament igual que a la línia superior
printf("Nom del teu millor amic: ");
scanf("%s", amic1);//recull el que introduïm i emmagatzema a amic1
printf("Nom del teu segon millor amic: ", amic2);
scanf("%s", amic2);//recull el que introduïm i emmagatzema a amic2
printf("Els teus millors amics són %s i %s", amic1, amic2);//%s fa referència a string
getchar();
getchar();
return(0);
}
Si els nostres millors amics es diuen Joan Francesc o Maria Elena, el fet que hi hagi un espai en blanc entre els noms, a l'hora de recollir les dades introduïdes pel teclat l'scanf ens pot donar problemes, així que potser és més recomanable utilitzar gets, així:
Farem un programa que et demani el nom dels teus dos millors amics i després te'ls mostri per pantalla:
/*Data: 25/05/10
Nom fitxer: millors_amics.c
Autor: AJF
Descripció: Programa que ens permetra guardar el nom dels nostres dos millors
amics*/
#include
int main(void){
char amic1[20];//cadena que permetrà guardar noms de màxim 20 caràcters
char amic2[20];//exactament igual que a la línia superior
printf("Nom del teu millor amic: ");
scanf("%s", amic1);//recull el que introduïm i emmagatzema a amic1
printf("Nom del teu segon millor amic: ", amic2);
scanf("%s", amic2);//recull el que introduïm i emmagatzema a amic2
printf("Els teus millors amics són %s i %s", amic1, amic2);//%s fa referència a string
getchar();
getchar();
return(0);
}
Si els nostres millors amics es diuen Joan Francesc o Maria Elena, el fet que hi hagi un espai en blanc entre els noms, a l'hora de recollir les dades introduïdes pel teclat l'scanf ens pot donar problemes, així que potser és més recomanable utilitzar gets, així:
Etiquetes de comentaris:
mitjans informàtics,
programació
dilluns, 24 de maig del 2010
Guardar més d'una dada en C++
Fins ara hem vist com declarar variables que ens permeten emmagatzemar dades de diferents tipus. En el senzill exemple que hem vist hem treballat amb dades numèriques, però també podríem, per exemple, emmagatzemar caràcters com lletres, i també números però tractats com a lletres. Bé, necessitem començara conèixer com guardar més d'una dada:
Taules
Ens permeten emmagatzemar dades del mateix tipus. Edats, anys, preus...
Cadenes
Serveixen per emmagatzemar més d'una lletra o caràcter. Ens va bé per títols, noms, cognoms, adreces...
Estructures
Permeten guardar dades de diferents tipus. Imagina les dades d'una persona: nom, cognoms, edat...
Demà veurem com s'implementen en C++. Ja només queden 4 dies per l'examen de dissabte!
Taules
Ens permeten emmagatzemar dades del mateix tipus. Edats, anys, preus...
Cadenes
Serveixen per emmagatzemar més d'una lletra o caràcter. Ens va bé per títols, noms, cognoms, adreces...
Estructures
Permeten guardar dades de diferents tipus. Imagina les dades d'una persona: nom, cognoms, edat...
Demà veurem com s'implementen en C++. Ja només queden 4 dies per l'examen de dissabte!
Etiquetes de comentaris:
mitjans informàtics,
programació
dissabte, 22 de maig del 2010
Resum estructures condicionals i repetitives
Aprofitant el gran ban de recursos que és Internet, deixo un enllaç que anirà bé per veure en profunditat el que he explicat molt per sobre fins ara.
Programació en C++: Estructures condicionals i repetitives
Programació en C++: Estructures condicionals i repetitives
Etiquetes de comentaris:
mitjans informàtics,
programació
divendres, 21 de maig del 2010
Estructures repetitives (iteratives)
Ahir van veure com en un determinat moment del programa potser necessitem que davant una certa condició el programa faci una cosa o una altra, ho vam veure amb l'exemple més comú. Tot i que tenim més possibilitats per fer el mateix.
Amb les estructures iteratives ens passa el mateix. Explicarem el concepte amb un tipus d'estructura, malgrat que tenim més maneres de fer el mateix. Doncs bé aquest tipus d'estructures es fan servir quan necessitem que el programa repeteixi unes instruccions un nombre determinat de vegades o mentre es compleixi una condició. Dit d'una altra manera, les instruccions són línies de codi, si unes determinades línies de codi s'han de repetir fins que alguna cosa canviï necessitarem una estructura repetitiva que ens generi un bucle del qual no sortirem fins que la condició canviï. És molt més "econòmic" que escriure mil cops determinades instruccions i és especialment útil quan depèn d'algun tipus d'interacció que la condició canviï.
Aprofitant el trillat exemple del programa dels amics, farem que, un cop el programa ens diu la frase en funció del % d'amics sense fills que tinguem, ens demani l'edat de cadascun d'aquests amics i després ens calculi la mitjana d'edat que tenen els nostres amics sense fills. Atenció! Com que encara no hem avançat gaire, traurem la possibilitat d'introduir les dades des del teclat i les dades del nombre d'amics del grup i el nombre d'amics sense fills aniran introduïdes al codi. Agafarem l'exemple del primer exercici: 6 amics al grup i només 1 amb fills, per tant 5 sense fills.
Crearem 4 variables noves:
edat>> encarregada d'emmagatzemar l'edat de l'amic dins el bucle
suma_edat>> acumularà el sumatori de les edats introduïdes
mitja>> contindrà l'operació per calcular la mitja d'edat dels sense fills
i>> serveix per recórrer pel bucle
El bucle.
En el nostre exemple el bucle és aquest:
for(i=0;i<5;i++){
printf("Introdueix la edat del amic %d: ", i+1);
scanf("%f", &edat);
suma_edat=suma_edat+edat;
}
Quin embolic, no? Doncs el for és una de les estructures repetitives. Està recomanat utilitzar-lo quan sabem exactament el nombre de cops que s'haurà de repetir el bucle. Nosaltres tenim 5 amics sense fills, per tant haurà de preguntar 5 cops l'edat de l'amic.
El que hi ha entre parèntesi indica l'inici, la condició i que passa a cada repetició:
Així dons i comença a 0 però quan el bucle es fa un cop, en sortir, valdrà 1, es torna a fer, en sortir valdrà 2, es torna a fer, en sortir valdrà 3... i així fins a 5 cops!
Les instruccions que són a l'interior del bucle:
for(i=0;i<5;i++){
printf("Introdueix la edat del amic %d: ", i+1);
scanf("%f", &edat); suma_edat=suma_edat+edat;
}
La primera línia de codi treu per pantalla la frase introdueix l'edat del amic %d i aquest %d en sortir per pantalla s'imprimirà per valor que tingui i en aquells moments més 1. O sigui el primer cop que veiem la frase, com que i val 0, si a 0 sumem 1 ens imprimirà:
Introdueix l'edat de l'amic 1
Com que i, en acabar les instruccions i tornar a entrar al bucle suma 1 per la instrucció i++ quan hagi d'imprimir la frase per segon cop i ja valdrà 1, però com que sumarà 1 en imprimir-la ens mostrarà:
Introdueix l'edat de l'amic 2
...i així successivament!
La segona línia de codi (scanf("%f", &edat);) llegeix l'edat que introduïm al teclat i l'emmagatzema temporalment a la variable edat.
La tercera línia va sumant les edats introduïdes i acumulant el sumatori dins la variable suma_edat. Recorda posar & davant la variable per a una correcta execució del programa.
Finalment:
mitja=suma_edat/5;
printf("La mitja de edat dels teus amics sense fills es de %.2f", mitja);
Calculem la mitja i imprimim el resultat per pantalla. Demà un resum amb els principals tipus d'estructures condicionals i iteratives!
Amb les estructures iteratives ens passa el mateix. Explicarem el concepte amb un tipus d'estructura, malgrat que tenim més maneres de fer el mateix. Doncs bé aquest tipus d'estructures es fan servir quan necessitem que el programa repeteixi unes instruccions un nombre determinat de vegades o mentre es compleixi una condició. Dit d'una altra manera, les instruccions són línies de codi, si unes determinades línies de codi s'han de repetir fins que alguna cosa canviï necessitarem una estructura repetitiva que ens generi un bucle del qual no sortirem fins que la condició canviï. És molt més "econòmic" que escriure mil cops determinades instruccions i és especialment útil quan depèn d'algun tipus d'interacció que la condició canviï.
Aprofitant el trillat exemple del programa dels amics, farem que, un cop el programa ens diu la frase en funció del % d'amics sense fills que tinguem, ens demani l'edat de cadascun d'aquests amics i després ens calculi la mitjana d'edat que tenen els nostres amics sense fills. Atenció! Com que encara no hem avançat gaire, traurem la possibilitat d'introduir les dades des del teclat i les dades del nombre d'amics del grup i el nombre d'amics sense fills aniran introduïdes al codi. Agafarem l'exemple del primer exercici: 6 amics al grup i només 1 amb fills, per tant 5 sense fills.
Crearem 4 variables noves:
edat>> encarregada d'emmagatzemar l'edat de l'amic dins el bucle
suma_edat>> acumularà el sumatori de les edats introduïdes
mitja>> contindrà l'operació per calcular la mitja d'edat dels sense fills
i>> serveix per recórrer pel bucle
El bucle.
En el nostre exemple el bucle és aquest:
for(i=0;i<5;i++){
printf("Introdueix la edat del amic %d: ", i+1);
scanf("%f", &edat);
suma_edat=suma_edat+edat;
}
Quin embolic, no? Doncs el for és una de les estructures repetitives. Està recomanat utilitzar-lo quan sabem exactament el nombre de cops que s'haurà de repetir el bucle. Nosaltres tenim 5 amics sense fills, per tant haurà de preguntar 5 cops l'edat de l'amic.
El que hi ha entre parèntesi indica l'inici, la condició i que passa a cada repetició:
- i=0; recorda que la variable i serveix per recórrer el bucle, s'inicia a 0 però canvia de valor
- i<5;>
- i++; vol dir que cada cop que es repeteixi el bucle, la variable 1 suma 1
Així dons i comença a 0 però quan el bucle es fa un cop, en sortir, valdrà 1, es torna a fer, en sortir valdrà 2, es torna a fer, en sortir valdrà 3... i així fins a 5 cops!
Les instruccions que són a l'interior del bucle:
for(i=0;i<5;i++){
printf("Introdueix la edat del amic %d: ", i+1);
scanf("%f", &edat); suma_edat=suma_edat+edat;
}
La primera línia de codi treu per pantalla la frase introdueix l'edat del amic %d i aquest %d en sortir per pantalla s'imprimirà per valor que tingui i en aquells moments més 1. O sigui el primer cop que veiem la frase, com que i val 0, si a 0 sumem 1 ens imprimirà:
Introdueix l'edat de l'amic 1
Com que i, en acabar les instruccions i tornar a entrar al bucle suma 1 per la instrucció i++ quan hagi d'imprimir la frase per segon cop i ja valdrà 1, però com que sumarà 1 en imprimir-la ens mostrarà:
Introdueix l'edat de l'amic 2
...i així successivament!
La segona línia de codi (scanf("%f", &edat);) llegeix l'edat que introduïm al teclat i l'emmagatzema temporalment a la variable edat.
La tercera línia va sumant les edats introduïdes i acumulant el sumatori dins la variable suma_edat. Recorda posar & davant la variable per a una correcta execució del programa.
Finalment:
mitja=suma_edat/5;
printf("La mitja de edat dels teus amics sense fills es de %.2f", mitja);
Calculem la mitja i imprimim el resultat per pantalla. Demà un resum amb els principals tipus d'estructures condicionals i iteratives!
Etiquetes de comentaris:
mitjans informàtics,
programació
dijous, 20 de maig del 2010
Estructures Condicionals
Fins ara hem vist que els programes funcionen de manera seqüencial, o sigui, fan el que indica el codi escrit de dalt a baix. Però potser en un determinat moment volem que el programa faci una cosa si, i només si, es compleix certa condició. A aquest tipus d'estructures les anomenem condicionals i la més senzilla és if/else.
Tornem a imaginar el problema del dia anterior, el dels fills. Volem que un cop hagi calculat el % d'amics sense fills el programa ens mostri per pantalla un missatgel. Per exemple si el nombre d'amics del nostre grup que encara no tenen fills és igual o més gran del 75% mostrarà un missatge i en qualsevol altre cas un altre. Escriuré només la part del codi, el codi comú el podeu posar igual en qualsevol programa. La part nova corresponent al que expliquem avui està en negreta:
int grup=0;
int sense_fills=0;
int resultat=0;
printf("Quants amics sou al teu grup? ");
scanf("%d", &grup);
printf("Quants amics del grup no tenen fills? ");
scanf("%d", &sense_fills);
resultat=(sense_fills*100)/grup;
printf("El percentatge dels que no tenen fills es del %d", resultat);
if(resultat>=75){
printf("El món quedarà despoblat gràcies a vosaltres");
}
else {
printf("Esteu superpoblant el planeta");
}
Mira el codi complert.
if(resultat>=75) vol dir que si el valor de la variable resultat és igual o més gran que 75 imprimirà la frase "El món quedarà despoblat gràcies a vosaltres", mentre que en qualsevol altre condició -else- s'imprimirà "Esteu superpoblant el planeta". És important entendre que només s'imprimirà una de les dues en funció del valor de la variable resultat. Les claus indiquen les instruccions que s'hauran de dur a terme en funció de quina condició es compleixi. Si només hi ha una instrucció al else de fet no caldrien les claus, tot i que si hi són, tampoc passa res. Una altra cosa important és que el if pot anar sol, sense l'else. De vegades potser que volem que passi una cosa si és compleix una condició i ja està!
Tornem a imaginar el problema del dia anterior, el dels fills. Volem que un cop hagi calculat el % d'amics sense fills el programa ens mostri per pantalla un missatgel. Per exemple si el nombre d'amics del nostre grup que encara no tenen fills és igual o més gran del 75% mostrarà un missatge i en qualsevol altre cas un altre. Escriuré només la part del codi, el codi comú el podeu posar igual en qualsevol programa. La part nova corresponent al que expliquem avui està en negreta:
int grup=0;
int sense_fills=0;
int resultat=0;
printf("Quants amics sou al teu grup? ");
scanf("%d", &grup);
printf("Quants amics del grup no tenen fills? ");
scanf("%d", &sense_fills);
resultat=(sense_fills*100)/grup;
printf("El percentatge dels que no tenen fills es del %d", resultat);
if(resultat>=75){
printf("El món quedarà despoblat gràcies a vosaltres");
}
else {
printf("Esteu superpoblant el planeta");
}
Mira el codi complert.
if(resultat>=75) vol dir que si el valor de la variable resultat és igual o més gran que 75 imprimirà la frase "El món quedarà despoblat gràcies a vosaltres", mentre que en qualsevol altre condició -else- s'imprimirà "Esteu superpoblant el planeta". És important entendre que només s'imprimirà una de les dues en funció del valor de la variable resultat. Les claus indiquen les instruccions que s'hauran de dur a terme en funció de quina condició es compleixi. Si només hi ha una instrucció al else de fet no caldrien les claus, tot i que si hi són, tampoc passa res. Una altra cosa important és que el if pot anar sol, sense l'else. De vegades potser que volem que passi una cosa si és compleix una condició i ja està!
Etiquetes de comentaris:
mitjans informàtics,
programació
dimecres, 19 de maig del 2010
Entrada de dades pel teclat
Ahir vam veure com solucionar el primer problema plantejat! Però en executar el programa ja se'ns donava la solució. No hi havia cap tipus d'interacció amb l'usuari. Imagina que volguéssim fer exactament el mateix programa però introduint les dades des del teclat. Així tots podríem saber el percentatge dels nostres amics que no tenim fills. És útil, oi? Serviria per diferents casos. El programa, en executar-se, ens demanaria primer:
"Quants amics tens?"
I nosaltres introduiríem la xifra.
"Quants d'aquests amics no tenen fills?"
I introduiríem la xifra d'amics sense fills.
Per aconseguir això necessitem fer alguns canvis. Observa el codi modificat (en negreta):
#include
int main(void){
int grup=0;
int sense_fills=0;
int resultat=0;
printf("Quants amics sou al teu grup? ");
scanf("%d", &grup);/*recull valor enter a la variable grup*/
printf("Quants amics del grup no tenen fills? ");
scanf("%d", &sense_fills);/*recull valor enter a la variable sense_fills*/
resultat=(sense_fills*100)/grup;
printf("El percentatge dels que no tenen fills es del %d", resultat);
getchar();
getchar();
return(0);
}
1. Les variables es declaren i s'inicialitzen amb valor 0.
2. Els printf imprimeixen per pantalla el que hi ha dins les "..."
3. scanf el que fa és llegir el que introduïm pel teclat i ho emmagatzema dins la variable de després la coma.
4. La operació es realitza un cop tenir la lectura de les variables grup i sense_fills.
Ara ja podríem jugar a introduir diferents xifres i observar com realitza el càlcul. A continuació les variables més utilitzades i com s'utilitzen tant per la sortida (printf) com per l'entrada (scanf) de dades.
%d - serveix per a enters (ex. 845)
%f - serveix per a amb decimals (ex. 4,7)
%c - serveix per a caràcters (ex. s)
És imprescindible posar & davant la variable que emmagatzemarà el valor quan fem la lectura (scanf).
"Quants amics tens?"
I nosaltres introduiríem la xifra.
"Quants d'aquests amics no tenen fills?"
I introduiríem la xifra d'amics sense fills.
Per aconseguir això necessitem fer alguns canvis. Observa el codi modificat (en negreta):
#include
int main(void){
int grup=0;
int sense_fills=0;
int resultat=0;
printf("Quants amics sou al teu grup? ");
scanf("%d", &grup);/*recull valor enter a la variable grup*/
printf("Quants amics del grup no tenen fills? ");
scanf("%d", &sense_fills);/*recull valor enter a la variable sense_fills*/
resultat=(sense_fills*100)/grup;
printf("El percentatge dels que no tenen fills es del %d", resultat);
getchar();
getchar();
return(0);
}
1. Les variables es declaren i s'inicialitzen amb valor 0.
2. Els printf imprimeixen per pantalla el que hi ha dins les "..."
3. scanf el que fa és llegir el que introduïm pel teclat i ho emmagatzema dins la variable de després la coma.
4. La operació es realitza un cop tenir la lectura de les variables grup i sense_fills.
Ara ja podríem jugar a introduir diferents xifres i observar com realitza el càlcul. A continuació les variables més utilitzades i com s'utilitzen tant per la sortida (printf) com per l'entrada (scanf) de dades.
%d - serveix per a enters (ex. 845)
%f - serveix per a amb decimals (ex. 4,7)
%c - serveix per a caràcters (ex. s)
És imprescindible posar & davant la variable que emmagatzemarà el valor quan fem la lectura (scanf).
Etiquetes de comentaris:
mitjans informàtics,
programació
dimarts, 18 de maig del 2010
Problema 1 en C++
Recuperem el problema exemple plantejat alguns posts enrere:
El teu grup d'amics de tota la vida és de sis persones, però, de moment, només una ha tingut fills. Quin percentatge del grup encara no té fills?
Jo el que faria seria una regla de tres: si 6 és el 100%, les 5 persones que no han tingut fills (6-1=5) quin percentatge representen.?
Solució=(5x100)/6= 83.3% seria el resultat.
Ja tenim la part A resolta. Hem pensat com arribar a la solució. Ara ens falta transportar això al llenguatge de programació concret amb el que estem treballant: C++.
Primer de tot necessitem definir variables i constants. I què és això? Doncs bé son com una mena de calaixos de memòria que ens permetran emmagatzemar dades de diferent tipus.
Constants
>>Les constants estan pensades per dades que es repeteixen al llarg del codi sense variació. Imagina que fem un programa per un país a on la majoria d'edat és als 18, i aquesta dada es va repetint per tot el codi, si la tenim definida com a constant i després hem d'aprofitar el mateix programa per un país a on la majoria d'edat és als 21 només canviant 1 cop la xifra funcionarà igualment. Ens estalvia feina.
Variables
>>Estan pensades per emmagatzemar dades que aniran canviant durant l'execució del programa.Com que el codi d'aquest programa concret és curt definirem tot com a variable i així simplifiquem.
El codi resultant seria aquest: en negreta el codi del programa en sí i en text normal el codi comú a tots els programes.
/*Data: 18/05/10
Nom fitxer: fills.c
Autor: AJF
Descripció: Programa que donat un nombre d'un grup d'amics i el nombre dels que no tenen fills ens calcula el percentatge dels que no són pares*/
#include
int main(void){
int grup=6;
int sense_fills=5;
int resultat=(sense_fills*100)/grup;
printf("El percentatge dels que no tenen fills es del %d", resultat);
getchar();
getchar();
return(0);
}
Veiem com quedaria el codi escrit amb el Dev-C++:
Clica la imatge per una bona visualització
Solució=(5x100)/6= 83.3% seria el resultat.
Ja tenim la part A resolta. Hem pensat com arribar a la solució. Ara ens falta transportar això al llenguatge de programació concret amb el que estem treballant: C++.
Primer de tot necessitem definir variables i constants. I què és això? Doncs bé son com una mena de calaixos de memòria que ens permetran emmagatzemar dades de diferent tipus.
Constants
>>Les constants estan pensades per dades que es repeteixen al llarg del codi sense variació. Imagina que fem un programa per un país a on la majoria d'edat és als 18, i aquesta dada es va repetint per tot el codi, si la tenim definida com a constant i després hem d'aprofitar el mateix programa per un país a on la majoria d'edat és als 21 només canviant 1 cop la xifra funcionarà igualment. Ens estalvia feina.
Variables
>>Estan pensades per emmagatzemar dades que aniran canviant durant l'execució del programa.Com que el codi d'aquest programa concret és curt definirem tot com a variable i així simplifiquem.
El codi resultant seria aquest: en negreta el codi del programa en sí i en text normal el codi comú a tots els programes.
/*Data: 18/05/10
Nom fitxer: fills.c
Autor: AJF
Descripció: Programa que donat un nombre d'un grup d'amics i el nombre dels que no tenen fills ens calcula el percentatge dels que no són pares*/
#include
int main(void){
int grup=6;
int sense_fills=5;
int resultat=(sense_fills*100)/grup;
printf("El percentatge dels que no tenen fills es del %d", resultat);
getchar();
getchar();
return(0);
}
Veiem com quedaria el codi escrit amb el Dev-C++:
Clica la imatge per una bona visualitzacióUn cop escrit el codi amb el programa Dev-C++, l'hauries de guardar des de:
>>Menú Fitxer /Anomena i Desa posar un nom i guardar amb extensió .c.
Un cop guardat ja el pots Compilar i Executar des de:
>>Menú Execució / Compila o clicant F9
Sortirà una pantalla negra a on et mostrarà la frase:
*No fiquem el % darrere el 83 perquè directament no sortiria per la consola (pantalla negra que mostra l'execució del programa).
Però perquè ens surt el 83 i no el 83.33.?
Doncs bé repassem i intentem entendre el codi:
int grup=6; -- definim la variable grup que és de tipus enter i per tant no pot tenir decimals
int sense_fills=5;-- el mateix però per la variable sense fills
int resultat=(sense_fills*100)/grup;-- el mateix per resultat
Hem definit 3 variables de tipus enter, dues emmagatzemen dades: el total d'amics i el total dels que no tenen fills i la tercera emmagatzema el resultat de l'operació descrita en la resolució del problema i que utilitza les dades de les 2 variables anteriors.
Si volem obtenir decimals hauríem de canviar int per float: el tipus de variable que permet emmagatzemar decimals. Pots provar de fer els dos exercicis i comprovar els canvis amb una i l'altra. És evident que en aquest cas ens aniria millor un float ja que és més precís.
El codi:
printf("El percentatge dels que no tenen fills es del %d", resultat);
El printf vol dir imprimir, però aquest imprimir vol dir que surti per la consola (i no per la impressora!). El que es visualitza a la consola és el que hi ha dins les " ". Dins les cometes tenim %d que vol dir que és un enter i que la variable que haurà de mostrar és resultat. Si vols veure com funciona pots canviar resultat pel nom de les altres variables i veure com t'imprimirà 6 o 5 en funció de quina triïs.
>>Menú Fitxer /Anomena i Desa posar un nom i guardar amb extensió .c.
Un cop guardat ja el pots Compilar i Executar des de:
>>Menú Execució / Compila o clicant F9
Sortirà una pantalla negra a on et mostrarà la frase:
*No fiquem el % darrere el 83 perquè directament no sortiria per la consola (pantalla negra que mostra l'execució del programa).
Però perquè ens surt el 83 i no el 83.33.?
Doncs bé repassem i intentem entendre el codi:
int grup=6; -- definim la variable grup que és de tipus enter i per tant no pot tenir decimals
int sense_fills=5;-- el mateix però per la variable sense fills
int resultat=(sense_fills*100)/grup;-- el mateix per resultat
Com a resum podem dir que per definir variables fem:
tipus nom=valor; (que és l'estructura que tenen les tres variables anteriors)
tipus nom=valor; (que és l'estructura que tenen les tres variables anteriors)
Hem definit 3 variables de tipus enter, dues emmagatzemen dades: el total d'amics i el total dels que no tenen fills i la tercera emmagatzema el resultat de l'operació descrita en la resolució del problema i que utilitza les dades de les 2 variables anteriors.
Si volem obtenir decimals hauríem de canviar int per float: el tipus de variable que permet emmagatzemar decimals. Pots provar de fer els dos exercicis i comprovar els canvis amb una i l'altra. És evident que en aquest cas ens aniria millor un float ja que és més precís.
El codi:
printf("El percentatge dels que no tenen fills es del %d", resultat);
El printf vol dir imprimir, però aquest imprimir vol dir que surti per la consola (i no per la impressora!). El que es visualitza a la consola és el que hi ha dins les " ". Dins les cometes tenim %d que vol dir que és un enter i que la variable que haurà de mostrar és resultat. Si vols veure com funciona pots canviar resultat pel nom de les altres variables i veure com t'imprimirà 6 o 5 en funció de quina triïs.
Etiquetes de comentaris:
mitjans informàtics,
programació
Subscriure's a:
Missatges (Atom)





