Język C
-
- Użytkownik
- Posty: 312
- Rejestracja: 25 lis 2010, o 13:47
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 1 raz
- Pomógł: 1 raz
Język C
Program, który wyznacza wartość bezwzględną liczby typu double
Tyle, że coś tu nie gra, może ktoś znaleźć błąd?
Kod: Zaznacz cały
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
main()
{
double x;
printf("podaj liczbe
",&x);
scanf("%f",&x);
if(x>=0)
return x;
else
return -x;
system("PAUSE");
}
- miki999
- Użytkownik
- Posty: 8691
- Rejestracja: 28 lis 2007, o 18:10
- Płeć: Mężczyzna
- Lokalizacja: Gdańsk
- Podziękował: 36 razy
- Pomógł: 1001 razy
Język C
Kod: Zaznacz cały
return -x;
Po co dołączasz biblioteki, których nie używasz?
Kod: Zaznacz cały
printf("podaj liczbe
",&x);
-
- Użytkownik
- Posty: 312
- Rejestracja: 25 lis 2010, o 13:47
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 1 raz
- Pomógł: 1 raz
Język C
Kod: Zaznacz cały
#include <stdio.h>
#include <stdlib.h>
main()
{
double x; /* typ danych double treść zadania */
printf("podaj liczbe
",x); /* ma to za zadanie wpisanie liczby */
scanf("%f",&x); /* pobiera od użytkownika liczbę jaką on wybierze */
if(x>=0) /* jeśli x jest większe równe 0 */
return x; /* wtedy zwróć x, czyli po prostu jeśli x dodatni to nie zmienia jego wartości*/
else /*jeśli nie to...*/
return (-x); /*gdy x ujemny zwróć liczbę przeciwną, czyli dodatnią*/
system("PAUSE"); /* zatrzymaj do wcisniecia klawisza przez uzytkownika */
}
- miki999
- Użytkownik
- Posty: 8691
- Rejestracja: 28 lis 2007, o 18:10
- Płeć: Mężczyzna
- Lokalizacja: Gdańsk
- Podziękował: 36 razy
- Pomógł: 1001 razy
Język C
No i tutaj komendy się kłaniają:
printf służy do wypisania komunikatu.
tutaj ok
ok
komenda "return" zakańcza w tym przypadku program. To że się wpisuje na ogół "return 0;" oznacza tyle co "wszystko jest ok, kończ program". Masz wyświetlić liczbę na ekranie. Jakiego polecenia użyjesz?
ok
i na końcu przed ostatnią klamrą stawiasz "return 0;".
Kod: Zaznacz cały
printf("podaj liczbe
",x); /* ma to za zadanie wpisanie liczby */
Kod: Zaznacz cały
scanf("%f",&x); /* pobiera od użytkownika liczbę jaką on wybierze */
Kod: Zaznacz cały
if(x>=0) /* jeśli x jest większe równe 0 */
Kod: Zaznacz cały
return x; /* wtedy zwróć x, czyli po prostu jeśli x dodatni to nie
Kod: Zaznacz cały
else /*jeśli nie to...*/
i na końcu przed ostatnią klamrą stawiasz "return 0;".
-
- Użytkownik
- Posty: 312
- Rejestracja: 25 lis 2010, o 13:47
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 1 raz
- Pomógł: 1 raz
Język C
jak dla danej liczby C wyznaczyć możemy najmniejszą˛ liczbę˛ naturalną n, taką, że
\(\displaystyle{ 1^{2}+ 2^{2}+...+ n^{2} \ge C}\)
\(\displaystyle{ 1^{2}+ 2^{2}+...+ n^{2} \ge C}\)
Co tutaj źle wpisałem?#include <stdio.h>
#include <stdlib.h>
mian()
{
int n=0,suma=0;
while (suma<C)
n=n+1
suma = suma + n*n ;
return 0;
}
-
- Użytkownik
- Posty: 795
- Rejestracja: 2 cze 2010, o 08:56
- Płeć: Mężczyzna
- Lokalizacja: Tarnów
- Podziękował: 14 razy
- Pomógł: 66 razy
Język C
No dobra ale ile to c jest rowne? Przeciez skoro nie przypisales tam jakiejs wartosci to sa tam jakies śmieci. Druga sprawa co niby Twoja pętla while ma robic? Nie ma po niej żadnego bloku instrukcji wiec wykona sie pierwsza instrukcja jaka po warunku występuje a chyba nie taki był Twoj zamiar. Zrób to na spokojnie a nie huzia na józia na szybko i niech nie dziala a na forum mi napiszą gotowca.
-
- Użytkownik
- Posty: 312
- Rejestracja: 25 lis 2010, o 13:47
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Podziękował: 1 raz
- Pomógł: 1 raz
Język C
Teraz powinno być już dobrze
czyli odpowiedź n=12367
Czy już dobrze to zdefiniowałem?-- 6 gru 2010, o 22:14 --Jeśli ten program jest poprawny w C++ to co trzeba w nim zmienić żeby działał w C?
Kod: Zaznacz cały
#include <stdio.h> /* podstawowa konieczna biblioteka*/
#include <stdlib.h> /* korzystamy z tej biblioteki, gdy bierzemy system pause*/
#include<math.h> /* biblioteka zawierająca funkcje matematyczne */
#define C 10 /* stała C równa 10 */
int main()
{
int n=0; /*liczba calkowita n=0*/
double suma=0; /*suma podwojnej dokladnosci rowna 0*/
while(suma < C) /* gdy suma mniejsza od C*/
{
n=n+1; /*weź kolejną liczbę całkowitą n*/
suma=suma+1.0/n; /*oblicz sumę*/
}
printf("Dla n=%d suma czesciowa szeregu harmonicz wieksza niz %d
", n,C); /*printf powoduje pokazanie napisu na ekranie po kompilacji*/
system("PAUSE"); /*wstrzymanie programu*/
return 0; /*oddaj 0 czyli program poprawny*/
}
Czy już dobrze to zdefiniowałem?-- 6 gru 2010, o 22:14 --Jeśli ten program jest poprawny w C++ to co trzeba w nim zmienić żeby działał w C?
Kod: Zaznacz cały
#include <stdio.h>
#include <stdlib.h>
#include<math.h>
#define ROZMIAR 5
int main()
{
int i;
float su=0;
float srednia;
float tab[ROZMIAR]={10,4,6,20,10};
for (i=0;i<ROZMIAR;i++)
{
su=su+ tab[i];
}
srednia=su/ROZMIAR;
printf("srednia podanych liczb rowna sie %f
", srednia);
system("PAUSE");
return 0;
}