-
Fototrend

Új hozzászólás Aktív témák
-
Pala
veterán
Hali! Újra a segítségeteket szeretném kérni!
Az a feladat, hogy írjak egy programot C-ben, amelynek megadhatunk 3 számot (a, b, c) és utána ezeket kiírja növekvő sorrendben, méghozzá úgy, hogy a számhoz hozzáírja azt is, hogy melyik volt az ''a'', melyik a ''b'' és melyik a ''c''.
Tehát pl:
a=7
b=4
c=5
és akkor ezt adná ki, hogy: b=4, c=5, a=7.
Abban kéne egy kis help, hogy milyen gondolatmenet alapján készítsem el a progit. Létezik valami olyasmi művelet, amellyel az (a,b,c) halmaz legkisebb v. legnagyobb elemét ki lehet választani?
Nem kell megírni helyettem
, csak szeretném, ha valaki tudna segíteni, hogy milyen algoritmussal kell ezt megcsinálni...
úgy meg tudom írni, hogy szépen végig beprogramozom egyesével az összes esetet, ahogy a számok lehetnek egymás után, de ez elég macerás, és szinte biztos, hogy van ennél optimálisabb megoldás. -
Pala
veterán
Egy kis help kellene!
#include <stdio.h>
void osszeadas ();
void szorzas ();
int main ()
{
int c;
c=0;
printf (''Udvozlom a szamologepben! Kerem valasszon muveletet!\n\n'');
while (c!=3)
{
printf (''1 - Osszeadas\n'');
printf (''2 - Szorzas\n'');
printf (''-------------\n'');
printf (''3 - Kilepes\n\n'');
printf (''Valasztott muvelet szama: '');
fflush (stdin);
if (scanf (''%d'',&c)!=1) c=0;
switch (c)
{
case 1: osszeadas (); break;
case 2: szorzas (); break;
case 3: break;
default: printf (''Nem megfelelo muveletszam [%d]. Adjon meg egy masikat!\n\n'',c);
}
}
printf (''\n\nTovabbi jo munkat!\n'');
return 0;
}
void osszeadas ()
{
double a,b;
printf (''\nOsszeadas\n'');
printf (''---------\n'');
printf (''Kerem az elso szamot:\t '');
fflush (stdin);
scanf (''%lg'',&a);
printf (''Kerem a masodik szamot:\t '');
fflush (stdin);
scanf (''%lg'',&b);
printf (''EREDMENY: %g\n\n'',a+b);
}
void szorzas ()
{
double a,b;
printf (''\nSzorzas\n'');
printf (''-------\n'');
printf (''Kerem az elso szamot:\t '');
fflush (stdin);
scanf (''%lg'',&a);
printf (''Kerem a masodik szamot:\t '');
fflush (stdin);
scanf (''%lg'',&b);
printf (''EREDMENY: %g\n\n'',a*b);
}
ez egy kis progi, amit én írtam (most kezdtem c nyelven tanulni). azt tudja, hogy két tetszőleges számot összead vagy összeszoroz a ''felhasználó'' igényeinek megfelelően
na most.... az ''osszeadas'' és ''szorzas'' programrészekben a scanf-eknél ott van a ''%lg'', illetve az eredmény kiíratásánál a ''%g'' ezek pontosan mit jelentenek, konkrétan a ''lg'' és ''g'' érdekel, és hogy ebben a progiban a megfelelő helyeken miért az(oka)t kell használni...a progit példaprogramokból kiemelt részek alapján írtam, ezért nem tudom, hogy mit jelentenek pontosan; maga a program működik. milyen esetekben használjuk továbbá a ''%d'', ''%u'', ''%lg'' és ''%g''-ket???...annyit tudok, hogy ezek mind adatbevitelkor a változó értékének megadására vonatkoznak.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Melyik tápegységet vegyem?
- Fotók, videók mobillal
- iPhone topik
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Parfüm topik
- Xiaomi 17 Ultra - jó az optikája
- Nothing Phone 2a - semmi nem drága
- Kormányok / autós szimulátorok topikja
- Milyen alaplapot vegyek?
- Asztrofotózás
- További aktív témák...
- Kiváló Logitech G920 kormány + Posta! Xbox One, Xbox Series, PC
- Steelseries Arctis Nova 7 Gen 2
- INGYEN FOX - Samsung 980 PRO 1TB SSD PCIe 4.0 (dobozával)
- INGYEN FOX! - Patriot Viper Blackout - 2x8 GB - 3200 MT/s - CL16
- Lenovo Thinkpad L13 Gen 3 i5-1235U/16GB RAM /256 GB SSD/13.3"FHD magyar bill. laptop
- BESZÁMÍTÁS! MSI B450 R5 5600 32GB DDR4 512GB SSD RX 9060 XT 16GB Zalman S2 TG Cooler Master 700W
- DELL Precision 3430 SFF,i7-8700,8GB,256GB SSD,NVIDIA Quadro P620 VGA,Win11
- Apple iPhone 12 128GB,Újszerű,Dobozaval,12 hónap garanciával
- Intel Xeon E5-2600v4 processzorok készleten 2680v4,2683v4,2697v4,2697Av4(áfás számla, 2 év garancia)
- AKCIÓ! LENOVO ThinkPad P15 Gen 1 munkaállomás - i7 10850H 16GB DDR4 256GB SSD Quadro T2000 W11
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

, csak szeretném, ha valaki tudna segíteni, hogy milyen algoritmussal kell ezt megcsinálni...