[c i c++] przerobienie kodu z C++ na C

marek12
Użytkownik
Użytkownik
Posty: 696
Rejestracja: 5 lut 2008, o 15:38
Płeć: Mężczyzna
Lokalizacja: marki
Podziękował: 165 razy
Pomógł: 20 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: marek12 »

jak przerobić ten kod z C++ na C

Kod: Zaznacz cały

#include <iomanip>
#include <iostream>

using namespace std;

{
  return(x * x + 2 * x);
}

int main()
{
  const int N = 1000; 
  double xp,xk,s,dx;
  int i;

  cout.precision(3);      
  cout.setf(ios::fixed);  

  cout << "Obliczanie  calki oznaczonej
"
          " za pomoca  metody trapezow
"
          "----------------------------
"
          "Podaj poczatek przedzialu calkowania

"
          "xp = ";
  cin >> xp;
  cout << "
Podaj koniec przedzialu calkowania

"
          "xk = ";
  cin >> xk;
  cout << endl;
  s  = 0;
  dx = (xk - xp) / N;
  for(i = 1; i < N; i++) s += f(xp + i * dx);
  s = (s + (f(xp) + f(xk)) / 2) * dx;
  cout << "Wartosc calki wynosi : " << setw(8) << s
       << "

";
  system("PAUSE"); return 0;
}
Awatar użytkownika
Undre
Użytkownik
Użytkownik
Posty: 1430
Rejestracja: 15 lis 2004, o 02:05
Płeć: Mężczyzna
Lokalizacja:
Podziękował: 3 razy
Pomógł: 92 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: Undre »

marek12 pisze:jak przerobić ten kod z C++ na C

Kod: Zaznacz cały

(...)
{
  return(x * x + 2 * x);
}
(...)
A to co ma być ?
tomalla
Użytkownik
Użytkownik
Posty: 179
Rejestracja: 10 mar 2009, o 15:28
Płeć: Mężczyzna
Lokalizacja: Olsztyn
Podziękował: 2 razy
Pomógł: 29 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: tomalla »

Przypuszczam że jest to tajemnicza funkcja "f(x)"
Kajot
Użytkownik
Użytkownik
Posty: 87
Rejestracja: 16 mar 2007, o 18:34
Płeć: Mężczyzna
Lokalizacja: Ostrowiec Św.
Pomógł: 18 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: Kajot »

tak naprawde musisz wymienic tylko wejscie/wyjscie na cstdio
Awatar użytkownika
Undre
Użytkownik
Użytkownik
Posty: 1430
Rejestracja: 15 lis 2004, o 02:05
Płeć: Mężczyzna
Lokalizacja:
Podziękował: 3 razy
Pomógł: 92 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: Undre »

cstdio to nie bardzo, imho chodzi o przerobienie tego na aplikację stricte C (a więc plik z rozszerzeniem .c i nagłówki ala stdio.h). Chociażby w DevCpp przy pisaniu aplikacji C (nie C++) załączanie cstdio skończy się czymś ala :

Kod: Zaznacz cały

1 L:Dev-Cpp PortableProjectsNew Foldermain.c cstdio: No such file or directory. 
Kajot
Użytkownik
Użytkownik
Posty: 87
Rejestracja: 16 mar 2007, o 18:34
Płeć: Mężczyzna
Lokalizacja: Ostrowiec Św.
Pomógł: 18 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: Kajot »

no to juz tylko kwestia nazewnictwa

cstdio=stdio.h

nie wiem o co chodzi autorowi topicu - tj. jak brzmi polecenie wykladowcy(?) tudziez osobiste zamiary i ambicje w kazdym badz razie wejscie/wyjscie trzeba inaczej zapisac, konkretnie funkcjami z stdio.h

btw Undre zwrocil uwage na dziwny blok kodu... tam raczej brakuje deklaracji funkcji inline przed nim, czy tez jest to jakis specyficzny zapis, ktory dziala i tym samym mocno mnie zdziwi?
marek12
Użytkownik
Użytkownik
Posty: 696
Rejestracja: 5 lut 2008, o 15:38
Płeć: Mężczyzna
Lokalizacja: marki
Podziękował: 165 razy
Pomógł: 20 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: marek12 »

chce go zapisać z rozszerzeniem .c i chodzi mi o przekszatłcenie tego kodu
Kajot
Użytkownik
Użytkownik
Posty: 87
Rejestracja: 16 mar 2007, o 18:34
Płeć: Mężczyzna
Lokalizacja: Ostrowiec Św.
Pomógł: 18 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: Kajot »

przede wszystkim ten dziwny blok kodu faktycznie sie NIE kompiluje, wiec chyba wkleiles jakas robocza wersje kodu... w kazdym badz razie brakuje tam

Kod: Zaznacz cały

double f(double x)
w zwiazku z czym

Kod: Zaznacz cały

kajot@Kajot-PC-ubu:~/Pulpit$ g++ cal.cpp
cal.cpp:6: błąd: expected unqualified-id before `{, token
cal.cpp: In function `int main(),:
cal.cpp:31: błąd: `f, was not declared in this scope
cal.cpp:32: błąd: `f, was not declared in this scope
po dopisaniu tego właśnie i zmianie we/wy na stdio.h

Kod: Zaznacz cały

#include<stdio.h>

double f(double x)
{
  return(x * x + 2 * x);
}

int main()
{
  const int N = 1000;
  double xp,xk,s,dx;
  int i;

  puts("Obliczanie  calki oznaczonej"); 
  puts("Podaj poczatek przedzialu calkowania");     
  printf("xp = ");
  scanf("%lf", &xp);
  puts("
Podaj koniec przedzialu calkowania");
  printf("xk = ");
  scanf("%lf", &xk);
  puts("");
  s  = 0;
  dx = (xk - xp) / N;
  for(i = 1; i < N; i++) s += f(xp + i * dx);
  s = (s + (f(xp) + f(xk)) / 2) * dx;
  printf("Wartosc calki wynosi : %lf ", s);
  return 0;
}

Kod: Zaznacz cały

kajot@Kajot-PC-ubu:~/Pulpit$ gcc -x c cal.c
kajot@Kajot-PC-ubu:~/Pulpit$ ./a.out
Obliczanie  calki oznaczonej
Podaj poczatek przedzialu calkowania
xp = 4.5

Podaj koniec przedzialu calkowania
xk = 5.6

Wartosc calki wynosi : 39.273667
o to chodzilo?
marek12
Użytkownik
Użytkownik
Posty: 696
Rejestracja: 5 lut 2008, o 15:38
Płeć: Mężczyzna
Lokalizacja: marki
Podziękował: 165 razy
Pomógł: 20 razy

[c i c++] przerobienie kodu z C++ na C

Post autor: marek12 »

tak dzieki
ODPOWIEDZ