Hocam tam anlayamadım bunu, kullanıcıdan aldığım tüm inputlar char tipinde, dizide tutuluyor. Burada her karakteri nasıl ayrı ayrı int yaptın? bana gereken tam olarak bu, sayıları ayrı ayrı tutmak gerekiyor. Aradaki + işaretlerini falan if else yazarak geçerim diyorum, onlarıda int yapmaya çalışmayacak. Hocam gece gece bana fonksiyon yazdırıyorsun. Visual Studio 2010 da denedim çalışıyor. Sayıların rakamlarını tek tek çekersin. Diğer işlemleri sen yap artık biraz anlamışsındır umarım. Geri kalanları if lerle elselerle while larla dolarla yap artık. #include "stdio. h" #include "conio. h" #include "string. h" int charToInt { char karakterler = ; int sayilar = ; for(int i=0; i<=9; i++) return -1; } int main { char kullaniciGirdisi = "11 + 22 /44 sonuç"; int kullaniciGirdisiBoyutu = strlen ; int sayi = 0; for(int i=0; i<kullaniciGirdisiBoyutu; i++) { if((sayi = charToInt != -1) } getch ; return 0; } DrKill tarafından 01/Ağu/13 03:29 tarihinde düzenlenmiştir Bu imzayı her grdüğünüzde 4gb kotanızın 0,00000358559191226959228515625 azalmaktadır. Bilerek ve istenerek bu imza yapılmıştır. Amaç kotanızı smürmektir

Benim aldığım hatanın aynısı çıktı hocam, cannot convert `char ' to `const char ' for argument `1' to `int atoi ' Hallolmuş gerçi ama Codeblocks ta normal çalışıyor bende temp = atoi(&tempchar ); şyle belki senin derleyicidede çalışır :) artık hangisi kolayına gelirse. nceki yazdığım gibide bu düzeltmeylede Codeblocks normal bir şekilde derleyip çalıştırıyor. OnLyGoDCaNStoPMe tarafından 01/Ağu/13 03:43 tarihinde düzenlenmiştir

kullanıcıdan aşağıdaki şekilde bir input alıyorum, karakter dizisinde tutuyorum. "9-3+11/4^3" daha sonra bu işlemi yaptırıp sonucu dndürmek için bir while dngüsü ve içine if else yapıları falan yazdım. Planım atoi fonksiyonunu kullanarak, bu dizideki her sayıyı tek tek double, yada integer yapmaktı. Ancak atoi fonksiyonu tüm diziyi sayıya çeviriyor. yani; temp=atoi(karakter ); bu şekilde yazınca olmadı doğal olarak. Bana dizinin belirlediğim bir elemanını sayıya çevirecek fonksiyon lazım. Nasıl yapabilirim müridler, bir el atın şuna :)

akustikelektrik bunu yazdı Hocam tam anlayamadım bunu, kullanıcıdan aldığım tüm inputlar char tipinde, dizide tutuluyor. Burada her karakteri nasıl ayrı ayrı int yaptın? bana gereken tam olarak bu, sayıları ayrı ayrı tutmak gerekiyor. Aradaki + işaretlerini falan if else yazarak geçerim diyorum, onlarıda int yapmaya çalışmayacak. Hocam gece gece bana fonksiyon yazdırıyorsun. Visual Studio 2010 da denedim çalışıyor. Sayıların rakamlarını tek tek çekersin. Diğer işlemleri sen yap artık biraz anlamışsındır umarım. Geri kalanları if lerle elselerle while larla dolarla yap artık. #include "stdio. h" #include "conio. h" #include "string. h" int charToInt { char karakterler = ; int sayilar = ; for(int i=0; i<=9; i++) return -1; } int main { char kullaniciGirdisi = "11 + 22 /44 sonuç"; int kullaniciGirdisiBoyutu = strlen ; int sayi = 0; for(int i=0; i<kullaniciGirdisiBoyutu; i++) { if((sayi = charToInt != -1) } getch ; return 0; } Hocam bu sefer oldu sanırım :) çok sağol zahmet oldu akşam akşam :)

hocam şyle denermisin acaba temp = atoi(&karakter ); bende bunu ekleyince ilk karakteri sayi olarak tempe aktardı.

akustikelektrik bunu yazdı OnLyGoDCaNStoPMe bunu yazdı hocam şyle denermisin acaba temp = atoi(&karakter ); bende bunu ekleyince ilk karakteri sayi olarak tempe aktardı. denedim hocam bunu yapınca ilk iki karakteri almayıp sonrasını tempe aktardı yani 98765 yazdığımda 765 kaydetti. Tam dediğim gibi olmadı ama bu bile çok işe yarar, eğer tam çzüm yoksa algoritma yı buna gre değiştirecez demektir :) gece gece 565le denemiştim ilk 5 zannetmişim. şu şekilde denedim oldu hocam geçici bi chara aktararak. #include <stdio. h> #include <stdlib. h> int main Benim aldığım hatanın aynısı çıktı hocam, cannot convert `char ' to `const char ' for argument `1' to `int atoi '

akustikelektrik bunu yazdı Benim aldığım hatanın aynısı çıktı hocam, cannot convert `char ' to `const char ' for argument `1' to `int atoi ' Hallolmuş gerçi ama Codeblocks ta normal çalışıyor bende temp = atoi(&tempchar ); şyle belki senin derleyicidede çalışır :) artık hangisi kolayına gelirse. nceki yazdığım gibide bu düzeltmeylede Codeblocks normal bir şekilde derleyip çalıştırıyor. şimdi açıklığa kavuştu atoi konusu.. derleyicide sıkıntı oluyor, dev c++ kullanıyorum o yüzden byle olmuş, şimdi düzeldi.. Derleyiciden derleyiciye farklı kod ihtiyacına sinir oluyorum bu dilin :D sağolun beyler tekrardan

OnLyGoDCaNStoPMe bunu yazdı hocam şyle denermisin acaba temp = atoi(&karakter ); bende bunu ekleyince ilk karakteri sayi olarak tempe aktardı. denedim hocam bunu yapınca ilk iki karakteri almayıp sonrasını tempe aktardı yani 98765 yazdığımda 765 kaydetti. Tam dediğim gibi olmadı ama bu bile çok işe yarar, eğer tam çzüm yoksa algoritma yı buna gre değiştirecez demektir :) gece gece 565le denemiştim ilk 5 zannetmişim. şu şekilde denedim oldu hocam geçici bi chara aktararak. #include <stdio. h> #include <stdlib. h> int main

charToInt diye bir fonksiyon yaz 1 parametre alsın oda karakter char cinsinden olsun. char parametre; char karakterler = ; int sayilar = ; for(int i=0; i<=9; i++) return -1; de ondan sonra stringleri bu fonksiyon ile -1 dnmediği sürece kullan. atoi çalışması lazım ama işte. Vaktim yok deneyemiyorum bu mantık çalışır ama. DrKill tarafından 01/Ağu/13 02:52 tarihinde düzenlenmiştir Bu imzayı her grdüğünüzde 4gb kotanızın 0,00000358559191226959228515625 azalmaktadır. Bilerek ve istenerek bu imza yapılmıştır. Amaç kotanızı smürmektir

charToInt diye bir fonksiyon yaz 1 parametre alsın oda karakter char cinsinden olsun. char parametre; char karakterler = ; int sayilar = ; for(int i=0; i<=9; i++) return -1; de ondan sonra stringleri bu fonksiyon ile -1 dnmediği sürece kullan. atoi çalışması lazım ama işte. Vaktim yok deneyemiyorum bu mantık çalışır ama. Hocam tam anlayamadım bunu, kullanıcıdan aldığım tüm inputlar char tipinde, dizide tutuluyor. Burada her karakteri nasıl ayrı ayrı int yaptın? bana gereken tam olarak bu, sayıları ayrı ayrı tutmak gerekiyor. Aradaki + işaretlerini falan if else yazarak geçerim diyorum, onlarıda int yapmaya çalışmayacak.

hocam şyle denermisin acaba temp = atoi(&karakter ); bende bunu ekleyince ilk karakteri sayi olarak tempe aktardı. denedim hocam bunu yapınca ilk iki karakteri almayıp sonrasını tempe aktardı yani 98765 yazdığımda 765 kaydetti. Tam dediğim gibi olmadı ama bu bile çok işe yarar, eğer tam çzüm yoksa algoritma yı buna gre değiştirecez demektir :)