[技術者向] コンピューター

全362924件中81~100件表示
  • C言語のqsortについて

    下記の課題に取り組んでおり、qsortをファイルの行数分のみ出力するプログラムを書いているのですが if (strcmp(ad, "ASC") == 0) { qsort(sin,1000 , sizeof(sin[0]), cmp_u); if (sin[i][0] == 0) { break; } } else { qsort(sin, 1000, sizeof(sin[0]), cmp_d); if (sin[i][0] == 0) { break; } この書き方ではエラーが出てしまい、どなたか書き方を教えて頂けないでしょうか? 【課題】 電卓アプリケーションの作成  以下の機能を満たすアプリケーションを作成してください。  ※画面の表示やログの形式は原則として例示されている内容に従ってください。  1) 四則演算が出来ること  2) コンソールから計算対象となる数値と演算子を受け取る    例) 5 + 6  3) 結果をコンソール上に表示する    例) 11  4) 演算結果と実行した日、時間、秒をログファイルとして保存する    ログの上限は1000行とする(上限を超過するケースはひとまず考慮しなくて良い)    例) log.txt に 以下の内容を記録      2015/04/27 14:30:51, 5 + 6, 11  5) コンソールからパラメータを受け取り、ログを実行時間の昇順/降順に並べ替えて    コンソールに表示する    例) ASC を入力      2015/04/26 10:20:00, 5 + 6, 11      2015/04/27 14:30:51, 7 - 6, 1      2015/04/27 15:30:00, 7 + 8, 15      2015/04/28 14:30:51, 8 + 9, 17    例) DESC を入力      2015/04/28 14:30:51, 8 + 9, 17      2015/04/27 15:30:00, 7 + 8, 15      2015/04/27 14:30:51, 7 - 6, 1      2015/04/26 10:20:00, 5 + 6, 11 【現在のソースコード】 #include <stdio.h> #include <time.h> #include <string.h> #include <stdlib.h> static char ad[10]; int cmp_u(const void* a, const void* d) { return strcmp((char*)a, (char*)d); } int cmp_d(const void* a, const void* d) { return strcmp((char*)d, (char*)a); } int main() { int num1, num2; char op; float answer; int r,i,n; FILE* fp; char c[11]; char sin[1000][1000]; char ad[8]; fp = fopen("log.txt", "a+"); if (fp == NULL) { printf("ファイルオープン失敗\n"); return -1; } while (1) { r = scanf("%d%c%d", &num1, &op, &num2); if (r != 3) { puts("input error"); return 1; } if (op == '+') { answer = num1 + num2; } else if (op == '-') { answer = num1 - num2; } else if (op == '*') { answer = num1 * num2; } else if (op == '/') { answer = (float)num1 / num2; } time_t t = time(NULL); struct tm* tm = localtime(&t); printf("%d/%02d/%02d ", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday); printf("%02d:%02d:%02d ", tm->tm_hour, tm->tm_min, tm->tm_sec); printf("%d%c%d,%f\n", num1, op, num2, answer); fprintf(fp, "%d/%02d/%02d ", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday); fprintf(fp, "%02d:%02d:%02d ", tm->tm_hour, tm->tm_min, tm->tm_sec); fprintf(fp, "%d%c%d,%f\n", num1, op, num2, answer); printf("計算を続けますか?"); scanf("%s\n", &c); if (strcmp(c, "no") == 0) { break ; } } fclose(fp); fp = fopen("log.txt", "r"); for (i = 0;i < 1000;i=i+1) { fgets(sin[i], sizeof(sin[0]), fp); //if (strcmp(sin, "NULL") == 0) { if (sin[i][0] == 0) { break; } } fclose(fp); printf("ASC or DESC: "); scanf(" %s", ad); if (strcmp(ad, "ASC") == 0) { qsort(sin,1000 , sizeof(sin[0]), cmp_u); if (sin[i][0] == 0) { break; } } else { qsort(sin, 1000, sizeof(sin[0]), cmp_d); if (sin[i][0] == 0) { break; } } for (i = 0;i < 1000;i = i + 1) { if (sin[i][0] == 0) { break; } printf("%s", sin[i]); } return 0; }

  • C言語でループから抜けれない

    下記の課題に取り組んでおり、ソートは一回抜かしてファイルの読み込みに取り組んでいる状態です。 電卓アプリケーションの作成  以下の機能を満たすアプリケーションを作成してください。  ※画面の表示やログの形式は原則として例示されている内容に従ってください。  1) 四則演算が出来ること  2) コンソールから計算対象となる数値と演算子を受け取る    例) 5 + 6  3) 結果をコンソール上に表示する    例) 11  4) 演算結果と実行した日、時間、秒をログファイルとして保存する    ログの上限は1000行とする(上限を超過するケースはひとまず考慮しなくて良い)    例) log.txt に 以下の内容を記録      2015/04/27 14:30:51, 5 + 6, 11  5) コンソールからパラメータを受け取り、ログを実行時間の昇順/降順に並べ替えて    コンソールに表示する    例) ASC を入力      2015/04/26 10:20:00, 5 + 6, 11      2015/04/27 14:30:51, 7 - 6, 1      2015/04/27 15:30:00, 7 + 8, 15      2015/04/28 14:30:51, 8 + 9, 17    例) DESC を入力      2015/04/28 14:30:51, 8 + 9, 17      2015/04/27 15:30:00, 7 + 8, 15      2015/04/27 14:30:51, 7 - 6, 1      2015/04/26 10:20:00, 5 + 6, 11 しかしVisual studioでのデバックで for (i = 0;i < 1000;i=i+1) { fgets(sin[1000], sizeof(sin[0]), fp); if (strcmp(sin, "EOF") == 0) { break; } この行でループが抜け出せなくなってしまいました。 どこを修正すればいいえしょうか? #include <stdio.h> #include <time.h> #include <string.h> #include <stdlib.h> /* static char ad[10]; int cmp_u(const void* a, const void* d) { return strcmp((char*)a, (char*)d); } int cmp_d(const void* a, const void* d) { return strcmp((char*)d, (char*)a); } */ int main() { int num1, num2; char op; float answer; int r,i,n; FILE* fp; char c[11]; char sin[1000][1000]; char ad[8]; fp = fopen("log.txt", "a"); if (fp == NULL) { printf("ファイルオープン失敗\n"); return -1; }

  • C言語の動的配列について

    C言語で下記の課題に取り組んでいるのですが、ファイルから入力された行数分を出力する事に対して、苦戦しております。 恐らく動的配列を使うと思うのですが・・・書き方が分からず、どなたか教えて頂けないでしょうか? 「課題文」 1) 四則演算が出来ること    2) コンソールから計算対象となる数値と演算子を受け取る      例) 5 + 6    3) 結果をコンソール上に表示する      例) 11    4) 演算結果と実行した日、時間、秒をログファイルとして保存する      ログの上限は1000行とする(上限を超過するケースはひとまず考慮しなくて良い)      例) log.txt に 以下の内容を記録        2015/04/27 14:30:51, 5 + 6, 11    5) コンソールに表示する 「ソースコード」 #include <stdio.h> #include <time.h> #include <string.h> #include <stdlib.h> int main() { int num1, num2; char op; float answer; int r,i,n; FILE* fp; char c[11]; char sin[][1000]; fp = fopen("log.txt", "a"); if (fp == NULL) { printf("ファイルオープン失敗\n"); return -1; } while (1) { r = scanf("%d%c%d", &num1, &op, &num2); if (r != 3) { puts("input error"); return 1; } if (op == '+') { answer = num1 + num2; } else if (op == '-') { answer = num1 - num2; } else if (op == '*') { answer = num1 * num2; } else if (op == '/') { answer = (float)num1 / num2; } time_t t = time(NULL); struct tm* tm = localtime(&t); printf("%d/%02d/%02d ", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday); printf("%02d:%02d:%02d ", tm->tm_hour, tm->tm_min, tm->tm_sec); printf("%d%c%d,%f\n", num1, op, num2, answer); fprintf(fp, "%d/%02d/%02d ", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday); fprintf(fp, "%02d:%02d:%02d ", tm->tm_hour, tm->tm_min, tm->tm_sec); fprintf(fp, "%d%c%d,%f\n", num1, op, num2, answer); printf("計算を続けますか?"); scanf("%s\n", &c); if (strcmp(c, "no") == 0) { break ; } } for (;;) { fgets(sin[i], sizeof(sin[0]), fp); } fclose(fp); for (i = 1; i <= n; i++) { printf("%s", sin[i]); } return 0; }

  • system ドライブの最適化 

    「18%が断片化しています」「最適化が必要です」と表示されますが、このドライブだけできません。どうすればできますか? Fujitsu LIFEBook  Windows10です。 参考:https://okwave.jp/qa/q10066778.html

  • Oracle11g InstantClientの件

    お世話になります。 Oracle11gデータベースが稼働しているサーバ(以後DBサーバ)があるのですが、 同一ネットワーク別サーバ(以後APPサーバ)にて動作しているシステムが上記データベースにOracle11gInstantClientを使って接続しております。 とある事情からAPPサーバ上でDBダンプを出力ことになったのですが、 どうやらダンプを出力するためのEXPの実行ファイルが11gのInstantClientにはないということが判明致しました。 調べると12c以降のInstantClientにはそれら実行ファイルがあるのですが、11gにはないようです。 11g版のEXPの実行ファイルを入手する方法はございますでしょうか。 ※試しに12cのInstantClientにあったEXP.EXEをAPPサーバにあるOracleのBINフォルダに置いてみましたが実行エラーとなりダメでした。 もちろんDBサーバ上でダンプ出力は可能ですが、あくまでAPPサーバ上で稼働しているシステムからダンプ出力させるのが目的ですので、そういった事情を踏まえた上でどなたかお知恵をお貸しいただけないでしょうか。 よろしくお願いいたします。

    • 受付中
    • 困ってます
    • ctske
    • Oracle
    • 回答数 0
  • binary tree c言語

    preorder inorderの配列からbinary treeを作る方法はなんですか? 例 preorder 1 2 4 5 3 6 7 inorder 4 2 5 1 6 3 7 →これに共通するbinarytreeを作りたいです。 1 / \ 2 3 / \ / \ 4 5 6 7 (要素は数字に限らず、また数字でも左子ノードが親ノードよりも小さくまた、右子ノードが大きいとは限りません。)

  • C言語のソートについて

    C言語で下記のファイルの中身を昇順と降順で出力しようとしているのですが、ソートが上手くいっていない状況です。 どなたか修正点を教えて頂けないでしょうか? 「ファイルの中身」 2022/11/14 16:19:56 4+4,8.000000 2022/11/14 16:20:14 7+7,14.000000 2022/11/14 16:20:18 8+8,16.000000 2022/11/15 16:19:56 4+4,8.000000 2022/11/14 16:20:14 7+7,14.000000 2022/11/18 16:20:18 8+8,16.000000 2022/11/17 16:19:56 4+4,8.000000 2022/11/14 16:20:14 7+7,14.000000 2022/11/14 16:20:18 8+8,16.000000 「ソースコード」 #include <stdio.h> #include <string.h> #include <stdlib.h> int cmp_u(const void* a, const void* d) { return *(char*)a - *(char*)d; } int cmp_d(const void* a, const void* d) { return *(char*)d - *(char*)a; } int main() { int r,i,n; FILE* fp; char sin[9][1000]; fp = fopen("log.txt", "r"); if (fp == NULL) { printf("ファイルオープン失敗\n"); return -1; } for (i = 0; i < 9; i++) { fscanf(fp, "%s", &(sin[i])); } fclose(fp); printf("ASC or DESC: "); scanf(" %s", &ad); if (strcmp(ad, "ASC") == 0) { qsort(sin, 9, sizeof(char), cmp_u); } else { qsort(sin, 9, sizeof(char), cmp_d); } for (i = 0; i < 9; i++) { printf("%s\n", sin[i]); } return 0; }

  • c言語のファイル出力について

    現在C言語の課題に取り組んでおり、ファイルの中身通りに出力させたいのですが 「ファイルの中身」 2022/11/14 16:19:56 4+4,8.000000 2022/11/14 16:20:14 7+7,14.000000 2022/11/14 16:20:18 8+8,16.000000 2022/11/14 16:19:56 4+4,8.000000 2022/11/14 16:20:14 7+7,14.000000 2022/11/14 16:20:18 8+8,16.000000 2022/11/14 16:19:56 4+4,8.000000 2022/11/14 16:20:14 7+7,14.000000 2022/11/14 16:20:18 8+8,16.000000 「出力結果」 2022/11/14 16:19:56 4+4,8.000000 2022/11/14 16:20:14 7+7,14.000000 2022/11/14 16:20:18 8+8,16.000000 こういう形で改行されて出てきてしまいます。 どなたか修正点を教えて頂けないでしょうか? #include <stdio.h> #include <string.h> #include <stdlib.h> int main() { int r,i,n; FILE* fp; char sin[9][1000]; fp = fopen("log.txt", "r"); if (fp == NULL) { printf("ファイルオープン失敗\n"); return -1; } for (i = 0; i < 9; i++) { fscanf(fp, "%s", &(sin[i])); } fclose(fp); for (i = 0; i < 9; i++) { printf("%s\n", sin[i]); } return 0; }

  • Affinity Photo で境界線(枠線)

    Affinity Photo で境界線(枠線)を描きたいのですが、いろいろ試しても反映されずわからない状態です。 Photoshopであれば、レイヤーや選択範囲の内側/外側に境界線を描けますが、それと同じようなことをしたいのですがうまくできません。 一番やりたいのは選択範囲の内側や外側に枠線を描きたいんです。 ネットで検索しても思うようなサイトが見つからず困っています。 よろしくお願い致します。

  • pythonでエラー「out of memory」

    python seleniumでエラー「out of memory」の解決策を教えてほしいです。 python seleniumでブラウザの自動操作を行っています。 一覧の画面にボタンがあり、For文で繰り返し画面遷移を行っています。 処理が進むにつれてメモリがどんどん増え、最終的にメモリ不足で処理が停止してしまいます。 tracemallocでメモリの容量を見たところ 下記の2つが処理が進むにつれてメモリどんどん増えています。 C:\Users\xxx\AppData\Local\Programs\Python\Python311\Lib\urllib\parse.py:387: size=27.0 KiB, count=257, average=108 B C:\Users\xxx\AppData\Local\Programs\Python\Python311\Lib\urllib\parse.py:411: size=25.5 KiB, count=256, average=102 B ファイルの内容としてはurlが関係しているのかなと考えています。 parse.py:387⇒splitresult = urlsplit(url, scheme, allow_fragments) parse.py:411⇒return url[start:delim], url[delim:] parse.pyはシステムファイル?のためどのようにメモリの解放を行えばよいのか調査しましたが解決策が思い浮かびませんでした。 途中でメモリの解放等を行う方法がありますでしょうか?

  • e-Taxで

    e-TaxをするのにOSが最低でもwindows10でないといけないかと思いますが それで今回ちょっと難儀をしました 古いパソコンにたまたま10が入っていたのでなんとかなりましたが データの移動も面倒だし、モニターも見づらいため 次はメインPCでなんとかしたいと思っているのですが こちらも10年選手のパソコンで、ゲームもやらなくなったので普段使いには十分なのですが OSだけは7のままです これって何か安価に解決できる方法ってあるでしょうか? SSDにOSを入れてプライマリとして使ってみたい気もしますが それでも何万もの出費になってしまいますが・・・ 世の中のe-Tax利用者はみんな10以降を使ってるのでしょうか? 会計ソフトを使っています

  • C言語のファイルの入出力について

    現在、下記の課題に取り組んでいるのですが、qsortの所で詰まってしまいました。 どなたか修正点を教えて頂けないでしょうか? 習問題000 ~構造化プログラミングの基礎3 ファイル入出力~  電卓アプリケーションの作成   以下の機能を満たすアプリケーションを作成してください。    ※画面の表示やログの形式は原則として例示されている内容に従ってください。    1) 四則演算が出来ること    2) コンソールから計算対象となる数値と演算子を受け取る      例) 5 + 6    3) 結果をコンソール上に表示する      例) 11    4) 演算結果と実行した日、時間、秒をログファイルとして保存する      ログの上限は1000行とする(上限を超過するケースはひとまず考慮しなくて良い)      例) log.txt に 以下の内容を記録        2015/04/27 14:30:51, 5 + 6, 11    5) コンソールからパラメータを受け取り、ログを実行時間の昇順/降順に並べ替えて      コンソールに表示する      例) ASC を入力        2015/04/26 10:20:00, 5 + 6, 11        2015/04/27 14:30:51, 7 - 6, 1        2015/04/27 15:30:00, 7 + 8, 15        2015/04/28 14:30:51, 8 + 9, 17      例) DESC を入力        2015/04/28 14:30:51, 8 + 9, 17        2015/04/27 15:30:00, 7 + 8, 15        2015/04/27 14:30:51, 7 - 6, 1        2015/04/26 10:20:00, 5 + 6, 11 #include <stdio.h> #include <time.h> #include <string.h> #include <stdlib.h> int cmp_u(const void* a, const void* d) { return *(char*)a - *(char*)d; } int cmp_d(const void* a, const void* d) { return *(char*)d - *(char*)a; } int main() { int num1, num2; char op; float answer; int r,i; FILE* fp; char c[11]; char sin[9]; char ad[9]; fp = fopen("log.txt", "a"); if (fp == NULL) { printf("ファイルオープン失敗\n"); return -1; } while (1) { r = scanf("%d%c%d", &num1, &op, &num2); if (r != 3) { puts("input error"); return 1; } if (op == '+') { answer = num1 + num2; } else if (op == '-') { answer = num1 - num2; } else if (op == '*') { answer = num1 * num2; } else if (op == '/') { answer = (float)num1 / num2; } time_t t = time(NULL); struct tm* tm = localtime(&t); printf("%d/%02d/%02d ", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday); printf("%02d:%02d:%02d ", tm->tm_hour, tm->tm_min, tm->tm_sec); printf("%d%c%d,%f\n", num1, op, num2, answer); fprintf(fp, "%d/%02d/%02d ", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday); fprintf(fp, "%02d:%02d:%02d ", tm->tm_hour, tm->tm_min, tm->tm_sec); fprintf(fp, "%d%c%d,%f\n", num1, op, num2, answer); printf("計算を続けますか?"); scanf("%s\n", &c); if (strcmp(c, "no") == 0) { break ; } } printf("ASC or DESC: "); scanf(" %s", &ad); if (strcmp(ad, "ASC") == 0) { qsort(sin, 9, sizeof(char), cmp_u); } else { qsort(sin, 9, sizeof(char), cmp_d); } for (i = 0; i < 9; i++) { printf("%d\n", sin[i]); } fclose(fp); return 0; }

  • runasコマンドでのバッチファイルの実行

    runasコマンドを使用し、DHCPへの変更バッチファイルを管理者として実行をしたいのですが、うまく作動しません。 エラーは出ないのですが、DHCPに切り替わっていません。ちなみにですが、単体で管理者として実行した時は問題なく切り替わります。

  • gigabyteのマザボのbios

    gigabyteのB660m d2h DDR4のマザボでbiosを開いたあと「 Load UEFI Defaults 」 を行ってboot featureのboot option#1にubuntuのインストールusbを指定したのですがそこからどう操作すればOSの設定までいけるでしょうか?

  • エディタで書いたコード

    ATOMエディタで書いたHTMLコードをクロームブラウザで表示すると ある文が右に寄っています。 コードは教科書と比較して同じですが表示するとある文が右に寄ってしまいます。 原因と解決策を教えてください。 WINDOWS10です。 よろしくお願い致します。

    • ベストアンサー
    • すぐに回答を!
    • TIYOU
    • HTML
    • 回答数 4
  • googleメールが勝手に送信された

    タイトルどうりですが、自分のgoogleメールから相手にメールが届きました。 過去にgoogle ピクチャーに保存してた写真をシェアしたことはありますが、 メールに添付して送信はしてません。 ハッキングされてるのでしょうか? ご回答お待ちします。

  • 音楽ファイルの形式変換の 大きな疑問

    教えてください。 Windows PC 上の音楽ファイルを iPad で再生させようと iTunes を用いてファイル転送を試みました。 とても困ったことに iTunes (最新版)は .AAC ファイルを取り込むことを拒否しました。 国内外の情報を検索したところ iTunes が 正しいファイル形式の音楽ファイルの読み込みをさせない事例が 多発していることが分かりました。 結局、対応策として推奨されていた ファイル形式変換ソフトを使用して .AAC ファイルを .M4A 形式に変換して 無事に iTunes に取り込ませました。 ここで質問です。 .M4A 形式とは、構造上は .AAC ファイルの音声そのものと書かれていましたが 推奨されていた ファイル変換ソフトを使ったところ 変換前と変換後では、同じ音楽ファイルの .AAC の性状が変質していることが 分かりました。 なぜ Apple が開発したと言われる .AAC 形式を iTunes に取り込ませる際に .AAC のサンプリング周波数を わざわざ変更させなければならないのでしょうか。 下に、変換前と後の 同じ音楽ファイルのデーターを載せます。 よろしくお願いいたします。 ========= 変換前の状況 [Close to you.aac] AAC 44.10kHz 2.0ch(2/0 L+R) LC 98.41kb/s 9634f 00:03:43.701 (223.701sec) / 2,751,850Bytes ========= 変換後の状況 [Close to you.m4a] AAC 48.00kHz 2.0ch(2/0 L+R) LC 131.54kb/s [Extra][2] ISO Base Media v1 MetaData [MP4] 00:03:40.223 (220.223sec) / 3,663,317Bytes 真空波動研SuperLite 220101 / DLL 220101 Unicode

  • バッチファイルが無限ループする

    バッチファイルが無限ループしてしますのですが、 これはどういう状況でしょうか。 知見がなく、調べてもよく分かりませんでした。 どなたかアドバイスを頂けませんでしょうか。 ちなみにコマンドを直打ちすると、問題なく作動します。

  • 情報漏洩

    情報漏洩の観点から 会社はどんな監視をしていますか 貸与PCからの印刷データや メール記録など 他にどんなこと会社は見ているものですか。

  • Windows8.1→10とSSD換装

    下記動画と同じD550Cを持っています(Windows8.1)HDD:750GB メモリ4GBです。 https://www.youtube.com/watch?v=fEnfr2BMhpY これをSSD換装の上、Windows10にアップグレードさせようと思っていますが、SSD換装のみでメモリ増設(交換)はしなくても劇的にサクサク動くでしょうか? また、メモリ増設が必要な場合、増設用メモリの型番が判りません。 もし宜しければご教示頂けないでしょうか? 動画を拝見させていただいている限りではSSD換装時にバッテリーを取り付けたままのように見受けられますが、 取り外さなくても大丈夫でしょうか? デュプリケータを持っております(ロジテック:LHR-2BDPU3ES)。 手順としては下記の順序で問題ありませんか? 1.HDD→SSDクローン作成 2.(念のため)バックアップ実施 3.SSD換装 4.Windows10アップグレード 5.(必要に応じて)バックアップデータリストア また、現在HDDが750GBですが、実際には250GBでも500GBでも充分なくらいのデータ量しか保存されていません。 ですので、SSDは今よりも容量の少ないものにしたいと思いますが、その場合クローン作成せず、 USBメモリを使っての一からのWindows10インストールのほうが良いでしょうか? お手数をお掛け致しますが、宜しくお願いいたします。