質問編集履歴

13

tokuo0

tokuo0 score 8

2018/08/18 21:03  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// JavaScriptの例
importPackage(java.lang)
print=function(x){
 System.out.print(x+' ')}
not=function(predicate)
{
 return function(arg)
 {
   return!predicate(arg)
 }
}
multipleOf=function(n)
{
 return function(m)
 {
   if(m%n===0)
   {
     return true
   }
   else
   {
     return false
   }
 }
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
 if(m%_n==0)
 {
   return TRUE;
 }
 else
 {
   return FALSE;
 }
}
int(*multipleOf(int n))()
{
 _n=n;
 return _multipleOf;
}
int(*not())()
int (*not(int(*f)()))()
{
 int(*f)()=0;
 
 // 変換せずに返すので「 even()」のまま
 return f;
}
int main()
{
 int(*even)(),(*odd)();
 
 even=multipleOf(2);
 odd=not(even);
 print(odd(2));
 print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

12

tokuo0

tokuo0 score 8

2018/08/18 21:02  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// JavaScriptの例
importPackage(java.lang)
print=function(x){
System.out.print(x+' ')}
not=function(predicate)
{
return function(arg)
{
return!predicate(arg)
}
}
multipleOf=function(n)
{
return function(m)
{
if(m%n===0)
{
return true
}
else
{
return false
}
}
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
if(m%_n==0)
{
return TRUE;
}
else
{
return FALSE;
}
}
int(*multipleOf(int n))()
{
_n=n;
return _multipleOf;
}
int(*not())()
{
int(*f)()=0;
return f;
}
int main()
{
int(*even)(),(*odd)();
even=multipleOf(2);
odd=not(even);
print(odd(2));
print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

11

tokuo0

tokuo0 score 8

2018/08/18 19:30  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// JavaScriptの例
importPackage(java.lang)
print=function(x){
System.out.print(x+' ')}
not=function(predicate)
{
return function(arg)
{
return!predicate(arg)
}
}
multipleOf=function(n)
{
return function(m)
{
if(m%n===0)
{
return true
}
else
{
return false
}
}
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
if(m%_n==0)
{
return TRUE;
}
else
{
return FALSE;
}
}
int(*multipleOf(int n))()
{
_n=n;
return _multipleOf;
}
int(*not())()
{
int(*f)()=0;
return f;
}
int main()
{
int(*even)(),(*odd)();
even=multipleOf(2);
odd=not(even);
print(odd(2));
print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

10

tokuo0

tokuo0 score 8

2018/08/18 19:29  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// JavaScriptの例
importPackage(java.lang)
print=function(x){
System.out.print(x+' ')}
not=function(predicate)
{
return function(arg)
{
return!predicate(arg)
}
}
multipleOf=function(n)
{
return function(m)
{
if(m%n===0)
{
return true
}
else
{
return false
}
}
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
if(m%_n==0)
{
return TRUE;
}
else
{
return FALSE;
}
}
int(*multipleOf(int n))()
{
_n=n;
return _multipleOf;
}
int(*not())()
{
int(*f)()=0;
return f;
}
int main()
{
int(*even)(),(*odd)();
even=multipleOf(2);
odd=not(even);
print(odd(2));
print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

9

tokuo0

tokuo0 score 8

2018/08/18 19:28  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// JavaScriptの例
importPackage(java.lang)
print= function(x){
print=function(x){
 System.out.print(x+' ')}
not=function(predicate)
{
 return function(arg)
 {
   return!predicate(arg)
 }
}
multipleOf=function(n)
{
 return function(m)
 {
   if(m%n===0)
   {
     return true
   }
   else
   {
     return false
   }
 }
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
 if(m%_n==0)
 {
   return TRUE;
 }
 else
 {
   return FALSE;
 }
}
int(*multipleOf(int n))()
{
 _n=n;
 return _multipleOf;
}
int(*not())()
{
 int(*f)()=0;
 
 return f;
}
int main()
{
 int(*even)(),(*odd)();
 
 even=multipleOf(2);
 odd=not(even);
 print(odd(2));
 print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

8

tokuo0

tokuo0 score 8

2018/08/18 19:27  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// JavaScriptの例
importPackage(java.lang)
print= function(x){
System.out.print(x+' ')}
not=function(predicate)
{
return function(arg)
{
return!predicate(arg)
}
}
multipleOf=function(n)
{
return function(m)
{
if(m%n===0)
{
return true
}
else
{
return false
}
}
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
if(m%_n==0)
{
return TRUE;
}
else
{
return FALSE;
}
}
int(*multipleOf(int n))()
{
_n=n;
return _multipleOf;
}
int(*not())()
{
int(*f)()=0;
return f;
}
int main()
{
int(*even)(),(*odd)();
even=multipleOf(2);
odd=not(even);
print(odd(2));
print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

7

tokuo0

tokuo0 score 8

2018/08/18 19:23  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// JavaScriptの例
importPackage(java.lang)
print= function(x){
 System.out.print(x+' ')}
not=function(predicate)
{
 return function(arg)
 {
   return!predicate(arg)
 }
}
multipleOf=function(n)
{
 return function(m)
 {
   if(m%n===0)
   {
     return true
   }
   else
   {
     return false
   }
 }
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
 if(m%_n==0)
 {
   return TRUE;
 }
 else
 {
   return FALSE;
 }
}
int(*multipleOf(int n))()
{
 _n=n;
 return _multipleOf;
}
int (*not())()
int(*not())()
{
 int(*f)()=0;
 
 return f;
}
int main()
{
 int(*even)(),(*odd)();
 
 even=multipleOf(2);
 odd=not(even);
 print(odd(2));
 print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

6

tokuo0

tokuo0 score 8

2018/08/18 19:01  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// JavaScriptの例
importPackage(java.lang)
print= function(x){
System.out.print(x+' ')}
not=function(predicate)
{
return function(arg)
{
return!predicate(arg)
}
}
multipleOf=function(n)
{
return function(m)
{
if(m%n===0)
{
return true
}
else
{
return false
}
}
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
if(m%_n==0)
{
return TRUE;
}
else
{
return FALSE;
}
}
int(*multipleOf(int n))()
{
_n=n;
return _multipleOf;
}
int (*not())()
{
int(*f)()=0;
return f;
}
int main()
{
int(*even)(),(*odd)();
even=multipleOf(2);
odd=not(even);
print(odd(2));
print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

5

tokuo0

tokuo0 score 8

2018/08/18 19:00  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
 
```lang- JavaScript
// 元のJavaScriptのコード
// JavaScriptの例
importPackage(java.lang)
print= function(x){System.out.print(x+' ')}
print= function(x){
 System.out.print(x+' ')}
not=function(predicate)
{
 return function(arg)
 {
   return!predicate(arg)
 }
}
multipleOf=function(n)
{
 return function(m)
 {
   if(m%n===0)
   {
     return true
   }
   else
   {
     return false
   }
 }
}
even=multipleOf(2)
odd=not(even)
print(odd(2
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
 if(m%_n==0)
 {
   return TRUE;
 }
 else
 {
   return FALSE;
 }
}
int(*multipleOf(int n))()
{
 _n=n;
 return _multipleOf;
}
int (*not())()
{
 int(*f)()=0;
 
 return f;
}
int main()
{
 int(*even)(),(*odd)();
 
 even=multipleOf(2);
 odd=not(even);
 print(odd(2));
 print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

4

tokuo0

tokuo0 score 8

2018/08/18 18:51  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
 
```lang- JavaScript
// 元のJavaScriptのコード
importPackage(java.lang)
print= function(x){System.out.print(x+' ')}
not=function(predicate)
{
 return function(arg)
 {
   return!predicate(arg)
 }
}
multipleOf=function(n)
{
 return function(m)
 {
   if(m%n===0)
   {
     return true
   }
   else
   {
     return false
   }
 }
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
print(odd(2
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
 if(m%_n==0)
 {
   return TRUE;
 }
 else
 {
   return FALSE;
 }
}
int(*multipleOf(int n))()
{
 _n=n;
 return _multipleOf;
}
int (*not())()
{
 int(*f)()=0;
 
 return f;
}
int main()
{
 int(*even)(),(*odd)();
 
 even=multipleOf(2);
 odd=not(even);
 print(odd(2));
 print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

3

tokuo0

tokuo0 score 8

2018/08/18 18:48  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
 
```lang- JavaScript
// 元のJavaScriptのコード
importPackage(java.lang)
print= function(x){System.out.print(x+' ')}
not=function(predicate)
{
 return function(arg)
 {
   return!predicate(arg)
 }
}
multipleOf=function(n)
{
 return function(m)
 {
   if(m%n===0)
   {
     return true
   }
   else
   {
     return false
   }
 }
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
```
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
 if(m%_n==0)
 {
   return TRUE;
 }
 else
 {
   return FALSE;
 }
}
int(*multipleOf(int n))()
{
 _n=n;
 return _multipleOf;
}
int (*not())()
{
 int(*f)()=0;
 
 return f;
}
int main()
{
 int(*even)(),(*odd)();
 
 even=multipleOf(2);
 odd=not(even);
 print(odd(2));
 print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

2

tokuo0

tokuo0 score 8

2018/08/18 18:47  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
```lang- JavaScript
// 元のJavaScriptのコード
importPackage(java.lang)
print= function(x){System.out.print(x+' ')}
not=function(predicate)
{
 return function(arg)
 {
   return!predicate(arg)
 }
}
multipleOf=function(n)
{
 return function(m)
 {
   if(m%n===0)
   {
     return true
   }
   else
   {
     return false
   }
 }
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
 
// ---------- JavaScriptの例、終わり ----------  
```
 
 
```lang-C
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
 if(m%_n==0)
 {
   return TRUE;
 }
 else
 {
   return FALSE;
 }
}
int(*multipleOf(int n))()
{
 _n=n;
 return _multipleOf;
}
int (*not())()
{
 int(*f)()=0;
 
 return f;
}
int main()
{
 int(*even)(),(*odd)();
 
 even=multipleOf(2);
 odd=not(even);
 print(odd(2));
 print(odd(3));
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

1

tokuo0

tokuo0 score 8

2018/08/18 18:43  投稿

C言語で関数の処理内容自体の変換は可能か?
JavaScriptの例を下記に示しますが、
「odd=not(even)」で関数の処理内容自体を変換することが可能です。
これを単純にCに書き換えられないか
試みましたが、「not」の書き方で
躓いてしまいました。
書きかけのCのコードを
JavaScriptの例の下側に示します。
「not()」の部分の記述は仮のものです。
そもそも、この処理は
Cで書けるのでしょうか?
御教授下さい。
 
```lang- JavaScript  
// 元のJavaScriptのコード
importPackage(java.lang)
print= function(x){System.out.print(x+' ')}
not=function(predicate)
{
 return function(arg)
 {
   return!predicate(arg)
 }
}
multipleOf=function(n)
{
 return function(m)
 {
   if(m%n===0)
   {
     return true
   }
   else
   {
     return false
   }
 }
}
even=multipleOf(2)
odd=not(even)
print(odd(2))
print(odd(3))
// ---------- JavaScriptの例、終わり ----------
```  
 
```lang-C  
// C言語による書き換えを試みた途中結果
#include<stdio.h>
#define FALSE 0
#define TRUE !FALSE
void print(int x){printf("%d ",x);}
int _n;
int _multipleOf(int m)
{
 if(m%_n==0)
 {
   return TRUE;
 }
 else
 {
   return FALSE;
 }
}
int(*multipleOf(int n))()
{
 _n=n;
 return _multipleOf;
}
int (*not())()
{
 int(*f)()=0;
 
 return f;
}
int main()
{
 int(*even)(),(*odd)();
 
 even=multipleOf(2);
 odd=not(even);
 print(odd(2));
 print(odd(3));
}
}
```
  • JavaScript

    28564 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • C

    6541 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • 関数型プログラミング

    83 questions

    関数型プログラミングとは、関数を用いて演算子を構築し、算出し、コンピュータプログラムを構成する枠組みです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る