<prompt> Anzisha programu ya C inayosoma data kutoka kwa faili ya JSON iliyo na maelezo kuhusu bidhaa mbalimbali kama vile jina, bei na aina na kutekeleza shughuli za CRUD kwa kutumia hifadhidata ya SQLite. Zaidi ya hayo, tekeleza utendakazi wa kuchuja bidhaa kwa kategoria na kuzipanga kwa bei.PLINFORMAT  <response>: pamoja na pamoja na pamoja na pamoja na pamoja na json.hpppamoja na sqlite_modern_cpp.hkutumia json nlohmann::json;kutumia nafasi ya majina sqlite;muundo wa bidhaa kitambulisho cha int; std::jina la kamba; bei mara mbili; std:: kategoria ya kamba;;utupu createTabledatabasedb db UNDA JEDWALI IKIWA HAIPO bidhaa id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, price REAL, category TEXT;;utupu insertProductdatabasedb, const Product product db INGIZA KWENYE bidhaa jina, bei, kitengo THAMANI ?, ?, ?; product.name product.price product.category;std::vector readProductsFromJSONconst std::string filename std::ifstream faili jina la faili; ikiwa !faili.is_open kutupa std::runtime_errorHaikuweza kufungua faili; json j; faili j; std::vector bidhaa; kwa const auto item : j products.push_back0, itemname.pata, itemprice.get, itemcategory.get; bidhaa za kurudi;std::vector getFilteredAndSortedProductsdatabasedb, const std::string category std::vector bidhaa; db CHAGUA kitambulisho, jina, bei, kategoria KUTOKA kwa bidhaa WAPI kitengo ? AGIZA KWA bei ASC; kategoria id id, std::jina la kamba, bei mbili, std::kamba paka products.push_backid, jina, bei, paka; ; bidhaa za kurudi;void printProductsconst std::vector products kwa const auto product : products std::cout ID: product.id , Jina: product.name , Bei: product.price , Category: product. kategoria std::endl; int main jaribu Anzisha hifadhidata na unda jedwali hifadhidata dbproducts.db; createTabledb; Soma bidhaa kutoka kwa faili ya JSON const std::string filename products.json; std::vector products readProductsFromJSONfilename; Ingiza bidhaa kwenye hifadhidata ya SQLite kwa const auto product : products kuingizaBidhaadb, bidhaa; Chuja na upange bidhaa kulingana na kategoria na bei std::string category Elektroniki; std::vector filteredAndSortedProducts getFilteredAndSortedProductsdb, kategoria; Chapisha bidhaa zilizochujwa na kupangwa std::cout Bidhaa zilizochujwa na kupangwa katika kategoria kategoria : std::endl; printProductsfilteredAndSortedProducts; catch const std::exception e std::cerr Error: e.what std::endl; kurudi 1; kurudi 0; 